之前最多只做过两类单水平的分面,即两两组合的面板图。如果某类超过两个水平呢?

一类的分面:​​facet_wrap(~ align)​​​【R】ggplot2的facet_warp/grid如何实现超过两类水平的分面?_微信公众号

两类的分面(x轴和y轴):​​facet_grid(align ~ gender)​​​【R】ggplot2的facet_warp/grid如何实现超过两类水平的分面?_数据_02

如果某类超过两水平,如何实现?

很简单:​​facet_wrap(~ align + gender)​

【R】ggplot2的facet_warp/grid如何实现超过两类水平的分面?_数据_03

其他技巧:

  • 自定义图片行列数目排布:
    ​facet_wrap(~ gender + align, nrow = 2)​【R】ggplot2的facet_warp/grid如何实现超过两类水平的分面?_自定义_04
  • 分面中加入总水平
    ​ facet_grid(align ~ gender, margins=TRUE)​【R】ggplot2的facet_warp/grid如何实现超过两类水平的分面?_微信公众号_05
  • 不去掉无数据的分面(默认drop = T,面板若无数据分布,不显示该面板)
    ​facet_wrap(decade ~ gender, drop = FALSE)​【R】ggplot2的facet_warp/grid如何实现超过两类水平的分面?_数据_06

其他更多分面技巧,可参考:
​​​http://zevross.com/blog/2019/04/02/easy-multi-panel-plots-in-r-using-facet_wrap-and-facet_grid-from-ggplot2/​


作者:Bioinfarmer

 若要及时了解动态信息,请关注同名微信公众号:Bioinfarmer。