R包patchwork:行/列的标题

10
有没有办法使用patchwork包来按行或列添加标题以组合绘图? 例如,对于安排:patchwork <- (p | p2 | p3) / (p4 | p5 | p6),我想为图1-3添加一个标题,为图4-6添加另一个标题。

我认为可以通过使用 标注 来实现。 - stevec
我能想到三种解决方法:**(1)** 直接在ggplot中设置图表标题/轴标签(并省略一些)可以创建总体轴标签的印象, (2) 使用ggplot的facet_wrap也是一个选择,因为它具有总体行/列标题(但仅当您的数据结构适用于facet_wrap时)。 (3) 使用"grob"而不是patchwork可能会有所帮助。但我经常发现自己需要使用Powerpoint/Illustrator。 - Tapper
1个回答

1

是的,使用textGrob可以在使用patchwork生成的图形排列中为行或列添加标签,正如评论中建议的那样:

p1 <- ggplot(iris, aes(x=Species,y=Petal.Length)) + geom_boxplot()
p2 <- ggplot(iris, aes(x=Species,y=Sepal.Length)) + geom_boxplot()

row_label_1 <- wrap_elements(panel = textGrob('First Row', rot=90))
row_label_2 <- wrap_elements(panel = textGrob('First Row', rot=90))

p_all <- (row_label_1 | p1 | p2) / (row_label_2 | p1| p2) +
          plot_layout(widths = c(.1,1,1))  # adjust with

Patchwork assembly with row labels


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接