继续介绍par中的参数。
前面在画刻度线的时候,引入了par的一个参数pin,它表示的是当前图形的维度,即宽度和高度,单位为英寸。
> plot(cars)
> par("pin")
[1] 4.520417 3.910000
cars是R自带的一组数据,想要看看它包含什么,只需要使用下列代码:
View(cars)
对于其它数据,也可以使用函数View(),这在Rstudio中可能视觉效果更好一些。当然,也可以使用str()或者head()。因为我通常使用Rstudio,所以更习惯于View函数(第一幅是R的效果,第二幅是Rstudio的效果)。这里要注意的是,View的“V”一定是大写的。
接下来解释一下第二行代码,也就是说目前我画的这个散点图在该视图中宽为4.52英寸,高为3.91英寸。这样,我们可以任意指定某个图它的宽度和高度:
> par(pin=c(5,2))
> plot(cars)
> par(pin=c(2,5))
> plot(cars)
前两行代码是画了一个宽5英寸,高2英寸的散点图(左),后两行则为宽2英寸,高5英寸的同样的散点图(右)。如果画图时比例调的不对称,那么就会出现错误提示:
> par(pin=c(2,7))
> plot(cars)
Error in plot.new() :plot region too large
因此,想要画出一个完美的图形,通常情况下是要尝试很多遍的。(这里说明,图形的尺寸是在R中的尺寸,发表到这里,应该就不是它的原始尺寸了。^_^)
接下来介绍第二个参数family()。很多函数都有这个参数,如果遇到了再进行介绍。今天这个family参数是par中的。它是对字体进行设置。有三种标准字体,“serif”、“sans”和“mono”,用法简单,直接指定即可:
> par(mfrow=c(2,2))
> plot(cars)
>par(family="serif")
> plot(cars)
>par(family="sans")
> plot(cars)
>par(family="mono")
> plot(cars)
第一行代码在同一个界面展示4张图,两行两列,剩下的代码则分别指定每张图标签的字体。与font参数类似,我的理解是,font参数是在原字体上加粗、加斜,而family参数则是字体“本质”的改变。比如,都是宋体,可以加粗,加斜,这时类似于参数font,而不使用宋体,使用楷体,那么这种变换就类似于参数family。
在画散点图的点时,我们曾介绍在pch为21~25时,可以设置点的背景颜色(background),参数为bg,今天再说一下fg,它为前景颜色(foreground):
>par(bg="red