ggplot2一页多图(组合图)

suppressMessages(library(dplyr))
suppressMessages(library(ggplot2))
#绘制第一幅图p1
p1 <- diamonds %>% 
  ggplot(aes(x = color, y = price, fill = color)) + 
  geom_violin() + 
  facet_grid(clarity ~ .) + 
  theme_classic() +
  scale_fill_brewer(palette = 'Set1')
p1

ggplot2一页多图(组合图)_第1张图片

#绘制第二幅图p2
p2 <- diamonds %>% 
  ggplot(aes(x = color, fill = clarity)) + 
  geom_bar(stat = 'count') + 
  scale_fill_brewer(palette = 'Set1') +
  theme_bw()
p2

ggplot2一页多图(组合图)_第2张图片

#绘制第三幅图p3
p3 <- diamonds %>% 
  ggplot(aes(x = color, fill = clarity)) + 
  geom_bar(stat = 'count', position = 'fill') + 
  scale_fill_brewer(palette = 'Set3') +
  theme_bw()
p3

ggplot2一页多图(组合图)_第3张图片

#绘制第四幅图p4
p4 <- diamonds %>% 
  ggplot(aes(x = color, fill = clarity)) + 
  geom_bar(stat = 'count') + 
  coord_polar() + 
  scale_fill_brewer(palette = 'Set2') +
  theme_bw()
p4

ggplot2一页多图(组合图)_第4张图片
组合图方法一:cowplot包plot_grid()函数

p5 <- cowplot::plot_grid(p1, p2, p3, p4, nrow = 2, labels = LETTERS[1:4])#将p1-p4四幅图组合成一幅图,按照两行两列排列,标签分别为A、B、C、D。(LETTERS[1:4] 意为提取26个大写英文字母的前四个:A、B、C、D)
p5

ggplot2一页多图(组合图)_第5张图片
组合图方法二:ggpubr包ggarrange()函数

p6 <- ggpubr::ggarrange(p1, p2, p3, p4, nrow = 2, ncol = 2, labels = c('A', 'B', 'C', 'D'), font.label = list(color = 'red'))#将p1-p4四幅图组合成一幅图,按照两行两列排列,标签分别为A、B、C、D,颜色为红色(通过font.label = list()修改),无法通过label.color = 'red'或其他方式修改。
p6

ggplot2一页多图(组合图)_第6张图片

你可能感兴趣的:(ggplot2一页多图(组合图))