美文网首页科研信息学R语言训练
ggplot2一页多图(组合图)

ggplot2一页多图(组合图)

作者: Whuer_deng | 来源:发表于2019-05-31 10:56 被阅读272次
    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
    
    p1.png
    #绘制第二幅图p2
    p2 <- diamonds %>% 
      ggplot(aes(x = color, fill = clarity)) + 
      geom_bar(stat = 'count') + 
      scale_fill_brewer(palette = 'Set1') +
      theme_bw()
    p2
    
    p2.png
    #绘制第三幅图p3
    p3 <- diamonds %>% 
      ggplot(aes(x = color, fill = clarity)) + 
      geom_bar(stat = 'count', position = 'fill') + 
      scale_fill_brewer(palette = 'Set3') +
      theme_bw()
    p3
    
    p3.png
    #绘制第四幅图p4
    p4 <- diamonds %>% 
      ggplot(aes(x = color, fill = clarity)) + 
      geom_bar(stat = 'count') + 
      coord_polar() + 
      scale_fill_brewer(palette = 'Set2') +
      theme_bw()
    p4
    
    p4.png

    组合图方法一: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
    
    p5.png

    组合图方法二: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
    
    p6.png

    相关文章

      网友评论

        本文标题:ggplot2一页多图(组合图)

        本文链接:https://www.haomeiwen.com/subject/mncwtctx.html