如何使用R语言的页面布局功能
尔云间 一个专门做科研的团队

最简单的用法是par(mfcol=c(2,2)),其中从c(2,2)第一个2代表两行,第二个2代表两列。通过mfcol参数我们可以把一张图片的空间分给多张图片。
丰富一些的用法如下图

图片如下

但有时我们不想把图片的空间等分,如果我想要在plotA与plotC的空间放一张宽度是plotB与plotD之和的图片应当怎么办呢?函数layout可以完成这项工作。当我们打出如下代码时

可以得到布局

当我们改变参数后

布局变成了上框下窄

Layout的参数究竟代表什么呢?
在layout函数中,首先会根据matrix矩阵的维度把空间进行相应的分割形成多个小空间,这一点类似par函数的mfrow参数。但不同的是,layout分割出的空间并不是均匀大小的,heights参数规定了高度的比例,所以图中上方格子的高多是下方格子高度的两倍,相应的也有widths参数规定宽度的比例。


在layout函数中,matrix矩阵中若出现相同数字,那么如果该数字对应被分割出的空间相邻就会被融合成一整个空间。这样我们就可以自由的设计组合图片的比例了。
推荐阅读
生信果 生信入门、R语言、生信图解读与绘制、软件操作、代码复现、生信硬核知识技能、服务器等原创内容;关注小果,小果将会持续为你带来更多生信干货哦。