从R中的循环中绘制?

时间:2018-03-22 11:23:02

标签: r plot

我有这个:

     a <- 3:10
     for (i in seq_along(a))
     {
                  x <- a*i
     tiff("plottinh.tif", res = 300, width = 6000, height = 2000, units = "px") 
     par(mar=c(8, 5, 2.5, 3),mfrow=c(1,3), mgp=c(3.5, 1, 0))
     plot(x)
     dev.off()
     }

这将只生成最后一个x的一个数字。

根据mfrow=c(1,3),我应该有8个x的图:一个面板中的前三个,然后是一个面板中的后三个,然后是一个面板中的最后两个图。

所以我终于

  first three plots of x  >>    plottinh1.tif 
  second three plots of x >>    plottinh2.tif
  last two plots of x    >>    plottinh3.tif

对此有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这将为您提供所需的输出。

a <- 3:10
tiff("plottinh.tif", res = 300, 
     width = 6000, height = 2000, 
     units = "px") 
par(mar=c(8, 5, 2.5, 3), mfrow=c(3,3), 
    mgp=c(3.5, 1, 0))
for (i in seq_along(a))
{
  x <- a*i
  plot(x)
}
dev.off()

定义mfrow参数时出错,假设您希望绘图中包含三个圆柱子图,则应为mfrow=c(3,3)