在R中使用函数par(),layout()可以很容易组合多副图为一副总括图形。
一、par() 用法
在par 函数中使用图形参数mfrow=c(nrows,ncols)来按照行填充的行数为nrows,列数为ncols的图形矩阵。也可以使用mfcol=c(nrows,ncols)
举例:
> data(mtcars)
> attach(mtcars)
> opar <- par(no.readonly = TRUE)
> par(mfrow=c(2,2))
> hist(wt)
> hist(mpg)
> hist(disp)
> boxplot(wt)
> par(opar)
上述R语言代码得到的图形如下图所示:
其中par(mfrow=c(2,2))代表是按照2行2列来布置,也可以按照具体需求来更改行列数。
二、layout() 用法
函数layout()的调用形式为layout(mat),其中mat是一个矩阵,它指定了所有要组合的多个图形的所在位置。
举例:
> data(mtcars)
> attach(mtcars)
> layout(matrix(c(1,2,3,3),2,2,byrow=TRUE),widths=c(3,1),height=c(1,2))
> ##上述layout表示,首先按照2行2列来排布,1图和2图放在第一行,3图整个放在第二行。
> ##widths表示宽度按照3:1的比例来排列,height表示高度按照1:2的遍历来排列
> hist(wt)
> hist(mpg)
> hist(disp)
上述R语言代码得到的图形如下图所示:
可以调整layout矩阵的参数,以及widths和height来排列图片。
下一篇博客介绍R语言更精细的图形布局fig参数,请多多关注。