【问题标题】:Multiple figures in single figure [duplicate]单个数字中的多个数字[重复]
【发布时间】:2020-03-23 17:26:33
【问题描述】:

我想在 R 中创建四个(大体相同的)图并合并到一个 .png 文件中以插入到演示文稿中。

我正在使用 ggplot2。

我必须首先根据单个测试值进行一些数据整理。因此,我创建了一个函数(以测试值作为参数),然后将生成的图形分配给图形对象。

例如

Fig1 = RDDPlot('2010-05-02')
Fig2 = RDDPlot('2010-06-02')
Fig3 = RDDPlot('2010-07-02')
Fig4 = RDDPlot('2010-08-02')

我正在尝试按照以下方式使用par()https://www.statmethods.net/advgraphs/layout.htmlMultiple scatterplot figure in R

但是所有这些示例都使用绘图并且在一行上完成。我正在使用多个语句构建我的绘图(例如散点图与 vline、平均线等的组合),因此我更容易分配给图形对象,然后将对象布局在 (2,2) 中。

以下内容对我不起作用:

png(paste0(path,'Plot.png'),width=12.8,height=9.6,units="cm",res=1200)

  par(mfrow=c(2,2))
  Fig1
  Fig2
  Fig3
  Fig4

dev.off()

它只会生成一个只有 Fig1 的 .png...

【问题讨论】:

  • 绘制4个数字后的便捷编程解决方案,但在R之外是imagemagic

标签: r ggplot2


【解决方案1】:

您可以尝试使用gridExtra 包中的grid.arrange,然后使用ggsave 保存绘图:

library(gridExtra)
library(ggplot2)

p = grid.arrange(ncol = 2, nrow = 2, Fig1, Fig2, Fig3, Fig4)

ggsave(plot = p, filename = "Plot.png", units = "cm", height = 9.6, width = 12.8, dpi = 1200 )

【讨论】:

  • 太完美了!太感谢了。有什么方法可以稍微减少它们周围的空白,使它们看起来尽可能大?
  • 您可以在theme 命令中使用参数plot.margin
  • plot.marginstackoverflow.com/questions/15556068/…的使用可以查看这里
  • 谢谢!欣赏链接。我是 R 新手,所以这减少了我的反复试验!爱这样的人!竞相完成演示文稿...
  • 很高兴为您提供帮助。祝你演讲顺利
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-01-27
  • 1970-01-01
  • 2020-06-15
  • 2023-02-16
  • 2020-08-05
  • 2015-06-13
  • 1970-01-01
相关资源
最近更新 更多