【问题标题】:add title using grid.arrange for multiple plots made with gridExtra::grid.arrange使用 grid.arrange 为使用 gridExtra::grid.arrange 制作的多个绘图添加标题
【发布时间】:2018-11-16 15:28:09
【问题描述】:

我必须使用 gridExtra::grid.arrange 来绘制多个绘图,因为我使用包来创建适合绘图的包。 我必须使用 grid.arrange 为绘图创建一个标题。 现在我想将两者结合起来,但不知道如何。所以:我想绘制几个彼此相邻的数字,并给它们一个不同的标题。

我有 euler1 和 euler2 来代表我在欧拉图中的数据。 为了绘制 2 个图,此代码对我有用:

gridExtra::grid.arrange(plot(euler1),plot(euler2))

为了给一个单一的情节一个标题,这个代码对我有用:

plot1 <- plot(euler1)
grid.arrange(grobs = list(plot1), top = "Title 1")

现在,我想合并这两个代码。 我该怎么做?

例如,我尝试(但不起作用):

plot1 <- plot(euler1)
plot2 <- plot(euler2)
gridExtra::grid.arrange(plot1, plot2, grobs = list(plot1, plot2), top = list("Title 1","Title 2"))

问候, 朱迪思

【问题讨论】:

    标签: grid gridextra


    【解决方案1】:

    通常你会为情节本身添加标题,如

    p1 = ggplot() + ggtitle('plot 1')
    p2 = ggplot() + ggtitle('plot 2')
    
    grid.arrange(grobs = list(p1, p2), top = "Global Title", ncol=2)
    

    但如果您更喜欢使用 grid.arrange 的 top 参数作为标题,您可以嵌套它们,

    p = ggplot()
    grid.arrange(arrangeGrob(p, top = 'title 1'), arrangeGrob(p, top = 'title 2'), top = "Global Title", ncol=2)
    

    【讨论】:

    • 感谢您的回复。不幸的是,我正在使用的包(eulerr)取决于它自己的自定义绘图实现,其中 ggplot 不是一个选项,因此我必须使用原始问题“plot”和“grid.arrange”中所述的语法和“top”,和'gridExtra'。
    【解决方案2】:

    我想出了怎么做,因为在 plot 中使用 main 已针对 eulerr 包进行了修复。现在我可以使用了:

    gridExtra::grid.arrange(plot(euler1, main = 'title1'),
    plot(euler2, main = 'title2'))
    

    感谢大家的反馈。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-05
      • 1970-01-01
      • 2015-11-26
      • 2016-01-25
      • 1970-01-01
      • 1970-01-01
      • 2018-08-15
      • 1970-01-01
      相关资源
      最近更新 更多