函数par()、layout()是进行图形布局和控制的重要函数。
1.par()函数
在画图前,首先要通过par()函数参数设计图形的布局,可以运用具体的标签值或标签向量来完成。常用的par()函数的参数功能及默认值如表1.6.1所示,线的类型和宽度如图1.6.1所示,pch从1到25的取值对应的不同绘图符号如图1.6.2所示。
表1.6.1 常用的par()函数的参数功能及默认值表
续表
图1.6.1 线的类型与宽度举例
图1.6.2 pch从1到25的取值对应的不同绘图符号
2.layout()函数
对于等分绘图区域来说,par()函数能够完成相应的任务,如果对绘图区域分配不同面积的部分,每部分分别画图就需要用到layout()函数。
函数基本格式如下:
不同于par()函数等分绘图区域,layout()函数可以分配面积不同的区域,主要通过区域控制变量mat来实现。
mat是矩阵对象,包含矩阵中排列的元素(这些元素都是非负整数)以及行数、列数。
·heights:一个数值向量,规定最终各行的高度比,配合mat对象实现图形区域的设置。
·widths:一个数值向量,规定最终各列的宽度比,配合mat对象实现图形区域的设置。
·respect:配合其他参数加以设置,说明是分别独立完成的。
·layou.show():查看设置区域安排。
我们通过下面的例子看看如何实现控制区域面积的选取。
layout(mat=matrix(c(1,2,3,3),2,2),widths=c(2,1))
sz-layout(mat=matrix(c(1,2,3,3),2,2),widths=c(2,1))#设置两行两列区域第二列是一个图的控制情况并存放于sz(www.xing528.com)
layout.show(sz)#显示区域设置情况
par(mai=c(0.8,0.8,0.1,0.1))#设置区域边界
x-rnorm(3000)#形成3 000个标准正态随机变量随机数,并存放于x中
y-rt(3000,10)#形成3 000个自由度为t的随机变量并存放于y中
hist(x,freq=FALSE,col="lightblue",xlab="x",ylab="Density",ylim=c(0,0.4),main="")#画直方图
lines(density(x),col="red",lty=2,lwd=2)#增加密度曲线
hist(y,prob=TRUE,col="lightblue",xlab="x",ylab="density",ylim=c(0,0.4),main="")#画直方图
lines(density(x),col="red",lty=2,lwd=2)#增加密度曲线
boxplot(x,col="red",lwd=1)#画箱线图,如图1.6.3所示
图1.6.3 绘制竖箱线图
sz1-layout(mat=matrix(c(1,2,3,3),2,2,byrow=TRUE),heights=c(2,1)) #设置两行两列区域第二行是一个图的控制情况并存放于sz1
layout.show(sz1)#显示区域设置情况
par(mai=c(0.8,0.8,0.1,0.1))#设置区域边界
x-rnorm(3000)#形成3 000个标准正态随机变量随机数,并存放于x中
y-rt(3000,10)#形成3 000个自由度为t的随机变量并存放于y中
hist(x,freq=FALSE,col="lightblue",xlab="x",ylab="density",ylim=c(0,0.4),main="")#画直方图
lines(density(x),col="red",lty=2,lwd=2)#增加密度曲线
plot(x,y,xlab="x",ylab="y")
boxplot(x,col="red",lwd=1,horizontal=TRUE)#画箱线图,如图1.6.4所示
图1.6.4 绘制横箱线图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。