【发布时间】:2020-06-06 09:51:21
【问题描述】:
我有一个 ggplots 列表,这些 ggplots 可能过于复杂而无法使用 facet_wrap 进行排列。所有地块必须共享相同的图例,并应排列在网格中。网格的每一列需要不同的标题,网格的每一行也需要不同的标题。
一个简单得离谱的例子:
library(ggplot2)
library(ggpubr)
plot1<- ggplot() + geom_point(aes(x=1, y=1, col="a"))
plot2<- ggplot() + geom_point(aes(x=1, y=1, col="a"))
plot3<- ggplot() + geom_point(aes(x=1, y=1, col="a"))
plot4<- ggplot() + geom_point(aes(x=1, y=1, col="a"))
plotlist<- list(plot1, plot2, plot3, plot4)
ggarrange(plotlist = plotlist, ncol = 2, nrow = 2, common.legend = TRUE, legend="bottom")
这会生成除列和行标题之外的所有内容,并且 annotate_figure 只为图形添加一个全局标题。所需的输出应如下所示:
【问题讨论】:
-
小提示:当所有对象都相同时,也可以使用
plot1<-plot2<-plot3<-plot4<-