我正在使用通常引用的 g_legend 函数从使用 ggplot2 制作的图形中提取图例,这样我就可以使用 grid.arrange 将其组织为多个图。我希望图例是单行元素,这样我就可以轻松地将它放在网格的底部。但是,无论原始图上的格式如何, g_legend 总是返回带有单列的图例。有谁知道强制传说只有一行的方法?
#extract legend
#https://github.com/hadley/ggplot2/wiki/Share-a-legend-between-two-ggplot2-graphs
g_legend<-function(a.gplot){
tmp <- ggplot_gtable(ggplot_build(a.gplot))
leg <- which(sapply(tmp$grobs, function(x) x$name) == "guide-box")
legend <- tmp$grobs[[leg]]
return(legend)}