转载于:https://baijiahao.baidu.com/s?id=1608788822798459472
par函数概述
在R绘图时,有时我们想在一个绘图区中同时绘制多幅图。在R语言中可以有多个函数来实现此要求。这里先介绍一下绘图参数par函数的使用。
R中的par()函数可以将绘图区分割成规则的几个部分。
多图环境用参数mfrow或参数mfcol来设定,如:
par(mforw=c(3,2))
则是在同一绘图区中绘制3行2列共6个图形,而且是先按行绘制,即绘制完第1行的2个图形后,再绘制第2行的2个图形,最后是第3行的2个图形。同理,
par(mfcol=c(3,2))
也是绘制3行2列共6个图形,与上面不同的是,先按列绘制。即先绘制完第1列的3个图形,再绘制第2列的3个图形。
par设定的绘图参数直至退出前都会有效,即使是在某个函数中使用par()设定的参数,也会影响全局的效果,所以如果在绘图中需要恢复到初始状态,可以设置临时变量保存初始环境。在准备恢复时再使用par(临时变量)的形式恢复到初始状态。
绘图的例子
下面举例子说明该函数的具体使用方法:
设置一个2×2的多图窗口,分别绘制 y = sinx, y = cosx, y = 2*sinxcosx和y = tanx的图像,定义域为[-π,π]
编写R程序如下:
par(mfrow = c(2, 2))x <- seq(-pi,pi,by=0.1)plot(x,sin(x),typ=“l”)plot(x,cos(x))plot(x,2*sin(x)*cos(x))plot(x,tan(x))
绘图结果如下:
R在同一绘图区绘制多幅图
怎么样,好像这个图看起来有点丑,不要紧,下面给每个图以线的形式进行绘制,并加上颜色。如果对plot函数不懂的话,可以查看本号前面有关plot函数的详细介绍。
重新编写R程序如下:
par(mfrow = c(2, 2))x <- seq(-pi,pi,by=0.01)plot(x,sin(x),type=“l”,col=2)plot(x,cos(x),type=“l”,col=“green”)plot(x,2*sin(x)*cos(x),type=“l”,col=“blue”)plot(x,tan(x),type=“l”,ylim=c(-30,30),col=6)
这次的绘图结果如下:
修饰后的图形
怎么样,这次好像比上图俊俏多了。你可以试一试,很方便。尤其在做科研时,需要多幅图放在一起做比较,这样R中的par函数很方便的就实现了这个要求。
如果你对R语言数据分析感兴趣,可以关注本号,本号当前着重提供R语言数据分析方面的文章,从基础到高级,慢慢来,让我们逐步叩开R语言的大门,遨游在R的世界中。
本号今后会进一步更新Python,SPSS,Excel等做数据分析方法。欢迎留言,欢迎关注。