【问题标题】:Print plot(lm(y~x) in R using png() and dev.off()使用 png() 和 dev.off() 在 R 中打印 plot(lm(y~x)
【发布时间】:2012-05-06 12:56:35
【问题描述】:

当您 plot() 线性模型的拟合时,我想将 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 机器上。

【问题讨论】:

  • 举一个导致“Hit Return to see next plot”的摘要示例。

标签: linux r plot png


【解决方案1】:

几个选项是,使用以下虚拟数据

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" 等。 ask 的详细信息请参见 ?plot.lm,文件名中的符号请参见 ?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()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-17
    • 1970-01-01
    • 2015-11-20
    • 1970-01-01
    • 2013-09-01
    • 2021-03-25
    • 2022-11-22
    • 1970-01-01
    相关资源
    最近更新 更多