美文网首页R语言可视化
R语言—ggplot2画图如何使用分面

R语言—ggplot2画图如何使用分面

作者: biolearn | 来源:发表于2018-06-02 21:08 被阅读0次

    原创 2018.6.2 星期六 晴 biolearn

    两种方法:使用 facet_grid() 或 facet_wrap() 函数

    1. facet_grid(): 根据你指定的一个变量进行纵向分割,并根据另一个变量进行横向分割,如果纵向的变量个数为 N,横向的变量个数为 M,则会形成一个 N * M 的矩阵

    library(ggplot2)
    # 例子
    p <- ggplot(mpg, aes(x=displ, y=cty)) + geom_point()
    # 纵向分割
    p + facet_grid(drv ~ .)
    # 横向分割
    p + facet_grid(. ~ cyl)
    # 纵向横向同时分割
    p + facet_grid(drv ~ cyl)
    

    2. facet_wrap(): 分割的子图依次横向排布并换行,根据子图的数目默认使用相等数量的行和列,也可以使用 nrow 和 ncol 自定义行和列的数目

    # 根据一个变量进行分割,不分方向均使用横向排布
    p + facet_wrap( ~ cyl)
    # 指定排布的行数
    p + facet_wrap( ~ cyl,nrow = 1)
    # 根据两个变量进行分割
    p + facet_wrap(drv ~ cyl)
    

    总结:分割一个变量,变量少用facet_grid(),变量多用facet_wrap();分割两个变量,用facet_wrap() 更直观美观

    转载请注明出处~ biolearn

    相关文章

      网友评论

        本文标题:R语言—ggplot2画图如何使用分面

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