如何将图例显示为图表矩阵 (ggplot2) 中的图表?

How to show a legend as if it was a plot in a matrix of plots (ggplot2)?

我要显示三个图,我想将它们放在一个图矩阵中。第一个在左上角,第二个在右上角,第三个在左下角。 这些图具有相同的图例,我想将其显示在右下角,如图所示:

我正在使用 egg 包的 ggarrange() 函数来显示这样的图。 感谢您的帮助。

实现您想要的结果的一个选择是切换到 patchwork 包:

使用 mtcars 作为示例数据:

library(ggplot2)
library(patchwork)

p <- ggplot(mtcars, aes(factor(cyl), mpg, fill = factor(am))) +
  geom_boxplot()


list(p, p, p) |>
  wrap_plots(nrow = 2) +
  guide_area() +
  plot_layout(guides = "collect")