在R

时间:2018-08-15 17:25:37

标签: r plot r-plotly

我想创建一个多面板图。为此,我使用了“ How to use layout() function in R?”来创建布局。

我创建了一个如下所示的面板。

tpan = rbind(c(rep(1,3),c(rep(2,3),c(rep(3,3),8))),
         c(rep(1,3),c(rep(2,3),c(rep(3,3),8))),
         c(rep(1,3),c(rep(2,3),c(rep(3,3),8))),
         c(rep(1,3),c(rep(2,3),c(rep(3,3),8))),
         c(rep(1,3),c(rep(2,3),c(rep(3,3),8))),
         c(rep(1,3),c(rep(2,3),c(rep(3,3),8))),
         c(rep(4,3),c(rep(5,3),c(rep(6,3),8))),
         c(rep(4,3),c(rep(5,3),c(rep(6,3),8))),
         c(rep(4,3),c(rep(5,3),c(rep(6,3),8))),
         c(rep(4,3),c(rep(5,3),c(rep(6,3),8))),
         c(rep(4,3),c(rep(5,3),c(rep(6,3),8))),
         c(rep(4,3),c(rep(5,3),c(rep(6,3),8))),
         c(rep(9,3),c(rep(9,3),c(rep(9,3),9))),
         c(9,rep(7,2),c(rep(7,3),c(rep(7,3))),9),
         c(9,rep(7,2),c(rep(7,3),c(rep(7,3))),9),
         c(9,rep(7,2),c(rep(7,3),c(rep(7,3))),9),
         c(9,rep(7,2),c(rep(7,3),c(rep(7,3))),9),
         c(9,rep(7,2),c(rep(7,3),c(rep(7,3))),9),
         c(9,rep(7,2),c(rep(7,3),c(rep(7,3))),9),
         c(rep(9,3),c(rep(9,3),c(rep(9,3))),9))
layout(tpan)
layout.show(9)

现在,我想在每个布局内创建一个图并将最终结果另存为png。因此,最后的地块应该有8个地块。

par(mar=c(0,0,0,0), oma=c(0,0,0,0)) 
png("a.png",width=5,height=5,units="in",res=600)

为了可重复性,我在这里绘制了一个简单的重复图8次 plot(1:10);plot(1:10);plot(1:10);plot(1:10);plot(1:10);plot(1:10);plot(1:10);plot(1:10)

dev.off()

这并不能满足我的需求。这仅输出plot(1:10)的单个图,而不是单个图中组合的8个图。但是,当我尝试在Rstudio图窗口中手动绘制该图(不打开png设备)时,它会显示所有8个数字。

有人可以帮我吗?

对此我还有其他问题。

  1. 如果我想在每个面板text("A.....",)中恰好在每个面板图的中心处写一个文本怎么办。如何实现
  2. 还需要在每个面板周围绘制一个方框,如布局图中所示。我尝试使用box("outer",colour="black"),它只在整个图的外边缘周围创建一个框,而不是为单个面板创建框。
  3. 如何在布局中前后移动?例如。如何调用任何布局(5)并对其进行一些重新绘制/调整?

任何有关这些的帮助都对我有帮助。

enter image description here

0 个答案:

没有答案