我想在绘制()线性模型的拟合时将R生成的回归诊断图表打印到文件。有四个,它们用
中断执行Hit <Return> to see next plot:
Hit <Return> to see next plot:
Hit <Return> to see next plot:
Hit <Return> to see next plot:
因此,以下代码通常不起作用:
png('Filename.png', width=mywidth, height=myheight, units='in', res=300)
plot(lm(y~x)
dev.off()
因为我每次都要点击输入,并且不清楚这是否会正确地进行子图,或者将每个图命名为不同的文件。
如何捕获直接打印到磁盘的这些诊断图像?如果重要的话,我就是在linux机器上。
答案 0 :(得分:10)
使用以下虚拟数据
有两个选项set.seed(42)
x <- rnorm(100)
y <- 3.4 + (0.5 * x) + rnorm(100)
使用ask
参数并将其设置为FALSE
:
png('Filename%03d.png', width=6, height=6, units='in', res=300)
plot(lm(y~x), ask = FALSE)
dev.off()
请注意,我们必须使用%03d
向“文件名”添加数字,以便我们为这四个图像添加"Filename001.png"
等。有关?plot.lm
和ask
的详细信息,请参阅?png
以获取文件名中的符号。
或者,设置带有4个面板的绘图设备并绘制模型:
png("Filename_all.png", width=6, height=6, units='in', res=300)
layout(matrix(1:4, ncol = 2))
plot(lm(y~x))
layout(1)
dev.off()