我正在尝试将多个图表写入一个olocation,而是编写一堆空白图片:
我的代码如下:
titleplot<-NULL
for(i in 1:99){
titleplot<-colnames(data[i])
mypath <- file.path("C:","Users","user.ME","Desktop","graph outputs", paste("myplot_", titleplot, ".jpg", sep = ""))
plot(data[,i],type="l", main =titleplot)
jpeg(file=mypath)
dev.off()
}
有谁知道为什么会发生这种情况或我如何解决这个问题?
答案 0 :(得分:7)
您应该在调用jpeg
命令之前放置plot
命令。
jpeg(file=mypath)
plot(...)
dev.off()
答案 1 :(得分:2)
之前我遇到过这个问题。如果您在dev.list()
控制台中键入R
,则会看到您尝试保存的所有图表。例如:
# tiff jpeg tiff jpeg tiff jpeg tiff jpeg tiff tiff tiff tiff tiff jpeg tiff tiff tiff
# 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
无论您在代码中放置dev.off()
,如果您保存了许多绘图,就会遇到此问题。此问题的一种可能解决方案是重新启动R
会话。
这可以在命令行中完成:.rs.restartR()
或按ctrl+shift+F10
。
答案 2 :(得分:0)
将穆罕默德·沙克尔(Mohammed Shaker)和asb的答案结合起来,就可以得到非常简单的代码:
for (i in dev.list()[1]:dev.list()[length(dev.list())]) {
dev.off()
}
这将删除所有打开的图形设备:
> dev.list()
NULL
答案 3 :(得分:-2)
只需保留打印dev.off()
直到没有打开的设备