现代统计图形 - 科学网—博客
现代统计图形 - 科学网—博客
现代统计图形 - 科学网—博客
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
B.2 一页多图 165<br />
B.2 一页多图<br />
有时候我们需要将多幅图形放在同一页图中,以便对这些图形作出<br />
对比,或者使图形的排列更加美观。这种情况下,我们至少可以有三种选<br />
择:<br />
B.2.1 设置图形参数<br />
在前面3.1小节中我们曾经讲到过mfrow和mfcol两个参数,如果我们<br />
在par()函数中给这两个参数中的一者提供一个长度为2的向量,那么接下来<br />
的图形就会按照这两个参数所设定的行数和列数依次生成图形。本书的图<br />
形中有很多用到过这两个参数,如图3.4、5.4等,另外有一些统计图形函数<br />
也利用了这两个参数设置它们的图形版面,如四瓣图、条件分割图等。<br />
这两个参数的限制在于它们只能将图形区域拆分为网格状,每一格的<br />
长和宽都分别必须相等,而且每一格中必须有一幅图形,不能实现一幅图<br />
形占据多格的功能。下面的两个函数则灵活许多。<br />
B.2.2 设置图形版面<br />
R提供了layout()函数作为设置图形版面拆分的工具,其用法如下:<br />
1 > usage(layout)<br />
layout(mat, widths = rep(1, ncol(mat)),<br />
heights = rep(1, nrow(mat)), respect = FALSE)<br />
1 > usage(layout.show)<br />
layout.show(n = 1)<br />
其中mat参数为一个矩阵,提供了作图的顺序以及图形版面的安排;<br />
widths和heights提供了各个矩形作图区域的长和宽的比例;respect控制着各<br />
图形内的横纵轴刻度长度的比例尺是否一样;n为欲显示的区域的序号。<br />
mat矩阵中的元素为数字1到n,矩阵行列中数字的顺序和图形方格的顺<br />
序是一样的。图B.2解释了这种顺序,该图的矩阵为:<br />
1 > matrix(c(1, 2, 1, 3), 2)<br />
[,1] [,2]<br />
[1,] 1 1<br />
[2,] 2 3