一般分页绘图可以用par(nfrow()),但是这一方法在ggplot2中并不适用,ggplot2使用facet把数据按分类进行画图。
对一个变量进行分类
要想通过单个变量对图进行分面,可以使用函数 facet_wrap()。其第一个参数是一个公 式,创建公式的方式是在 ~ 符号后面加一个变量名
可以设置行列个数:如按照Petal.Width设置成三行
对二个变量进行分类
要想通过两个变量对图进行分面,需要在绘图命令中加入函数 facet_grid()。这个函数的 第一个参数也是一个公式,但该公式包含由 ~ 隔开的两个变量名。
欢迎关注!
由于有较多组的样品需要比较,图片皆为小提琴图,因此需要将多个样品的小提琴图放在一张图上面比较,比如下图:
这里用于画图的数据皆来自科学网 lyao222lll 的个人博客,这里画分页图主要用的数据为alpha1,数据结构如下:
参数说明:
strip.text:主要调整标题大小或者颜色。
strip.background:标题的背景颜色,可以选择颜色或者调整边框颜色。
strip.text.y或者strip.text.x:调整x轴或者y轴标题。示范画图只有x轴,因此如果设置为element_blank(),将不显示标题。
scales :是分页画图中非常重要的一个命令,如果是scales = 'free',则表明每一副图将根据各自的数据调整图的内容,但是如果这样的话,各个图的坐标轴将不一样,如果想要将各个图的坐标设置一样,将不能设置free,该参数可以对某个坐标轴进行设定,其值可以等于 'free_x'和'free_x'。
参考博客:ggplot2画分面图
官方参数说明:Wrap a 1d ribbon of panels into 2d
facet_wrap分页画图一些参数微调说明
plot_grid简单的说明示范