首页 > 解决方案 > 删除 ggarrange 中的空白,ggplot2

问题描述

ggplot2假设我有三个由包装制成的方形地块 p1 p2 p3 。之后我ggarrange在 package 下应用了命令ggpubr来制作一个 1*3 的图。以下是命令:

library(ggplot2)
library(ggpubr)
library(gridExtra)
data <- data.frame(matrix(seq(1, 30, 1), 2))

for(i in 1:5){
  plot1 <- ggplot(data = data, aes(y = data[, (i*3-2)])) + 
      theme(aspect.ratio = 1)
  plot2 <- ggplot(data = data, aes(y = data[, (i*3-1)])) + 
      theme(aspect.ratio = 1)
  plot3 <- ggplot(data = data, aes(y = data[, (i*3)])) + 
      theme(aspect.ratio = 1)
  p <- ggarrange(plot1, plot2, plot3,
                 ncol = 3, common.legend = TRUE, legend = "bottom")
  grid.arrange(p, top = paste(colnames(data)[i]), heights = c(1, 1))
}

rmarkdown 输出(下图)在排列的图下方显示了一个大的空白区域:

在此处输入图像描述

有什么办法可以去掉吗?我的想法是改变画布的默认大小..

标签: rggplot2gridextraggpubr

解决方案


推荐阅读