在R语言中dev.new()为啥只出窗口不出图
时间: 2024-02-12 21:07:47 浏览: 18
在R语言中,dev.new()函数用于创建一个新的绘图设备,但它并不会自动绘制图形。如果您想在新设备上绘图,请使用plot()或其他绘图函数来创建图形。如果您只是使用dev.new()来创建一个新设备,但没有任何图形被绘制,那么您可能只会看到一个空白的窗口。要在新设备上绘制图形,请使用以下代码:
```
dev.new()
plot(x, y) # 使用您自己的数据
```
这将在新设备上绘制一个简单的散点图。您也可以使用其他绘图函数,例如lines()或barplot(),来创建您想要的图形。
相关问题
dev.new()和dev.off()怎么组合使用
在 R 中,您可以使用 `dev.new()` 函数创建一个新的图形设备,然后使用 `dev.off()` 函数关闭该设备。通常情况下,您可以按照以下步骤进行操作:
1. 使用 `dev.new()` 函数创建一个新的图形设备,例如:
```
dev.new()
```
这将创建一个新的图形设备,您可以向其中绘制图形。
2. 在新的图形设备中绘制所需的图形。
3. 使用 `dev.off()` 函数关闭图形设备,例如:
```
dev.off()
```
这将关闭当前的图形设备,使您可以创建一个新的图形设备来绘制其他图形。
如果您需要在同一时间绘制多个图形,则可以使用 `dev.new()` 函数创建多个图形设备,并使用 `dev.off()` 函数关闭它们。例如,以下代码将创建两个图形设备,将图形绘制在其中,然后关闭它们:
```
dev.new()
plot(1:10)
dev.off()
dev.new()
plot(10:1)
dev.off()
```
这将创建两个图形设备,第一个设备中绘制了一个从 1 到 10 的简单折线图,第二个设备中绘制了一个从 10 到 1 的简单折线图。
用了dev.new()和绘图代码还是画不出来图咋办呀
如果您在使用dev.new()和绘图代码后仍然无法在窗口中看到图形,可能有以下几种原因:
1. 图形太小或太大:您可以尝试使用par()函数来设置图形的大小,例如:
```
dev.new()
par(mfrow = c(1, 1), mar = c(5, 5, 2, 1))
plot(x, y)
```
这将创建一个大小为5x5英寸的图形,并在其边缘留下2英寸的空白边距。您可以根据需要调整这些参数。
2. 图形被绘制在其他设备上:如果您在使用dev.new()之前创建了其他绘图设备(例如pdf()或png()),那么图形可能已经被绘制在其他设备上了。您可以使用dev.list()函数来列出当前的绘图设备,并使用dev.set()函数将绘图设备切换到新创建的设备上,例如:
```
dev.new()
dev.set(2) # 切换到第二个设备
plot(x, y)
```
3. 绘图代码存在错误:如果您的绘图代码存在错误,可能会导致图形无法正确绘制。请仔细检查您的代码并修复任何错误。
如果您仍然无法在窗口中看到图形,请尝试使用其他绘图设备,例如pdf()或png(),并将图形保存到文件中。这将确保您的图形被正确绘制,并可以在需要时进行查看。