02.07.2013 Views

现代统计图形 - 科学网—博客

现代统计图形 - 科学网—博客

现代统计图形 - 科学网—博客

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

50 第四章 元素<br />

一个多边形;density参数设置阴影线的填充密度(每英寸填充多少条线),<br />

如果设置了一个正值,那么颜色填充参数col将被忽略,只有当它被设置为<br />

负数或NA或NULL时才可以填充颜色;angle参数设置填充线条的角度;col设<br />

置填充颜色;border设置边框颜色,若设置为FALSE或NA,那么边框线将被<br />

省略。<br />

绘制多边形时要清楚它的过程:线条会随着横纵坐标点延伸,当走到<br />

最后一点时,就会重新延伸回第一点,这就是多边形的绘制基本原理。一<br />

般来说,大部分作图函数对于缺失数据都会默认省略不画,不会对图形造<br />

成什么影响,而对于多边形函数,数据中的缺失将构成“分界点”,用以分<br />

隔缺失点两端的点群,因此,若数据含缺失值,那么会有多个多边形被作<br />

出来。这一点性质对与多边形的灵活运用也是很重要的,我们有时可以故<br />

意设置缺失值,用以将图形分割为不同的区域。<br />

最后要说明,其实还有一个特殊的“矩形”,那就是整幅图形的边框,<br />

我们可以用box()函数来完成方框的绘制,我们可以不使用任何参数以添加<br />

默认的边框,也可以调整一些参数画出不同样式的方框(如虚线框等),具<br />

体参见?box。<br />

关于多边形和矩形,我们用一个比较巧妙的例子来说明具体用法,代<br />

码和效果参见图4.7。<br />

这幅图的目的在于只填充y值在0以上的部分,0以下的部分留空。 采<br />

取的手段是:先用多边形整体填充颜色,然后根据当前图形的坐标范围<br />

(用par(’usr’)获得(或者等价使用par()$usr),参见3.1小节)画一个白<br />

色的矩形覆盖0以下的图形部分,此时下面部分的线条也被覆盖了,所以<br />

接着我们再次画线,将所有线条补充完整,最后,添加一条高度为0的水平<br />

线,即完成本图。<br />

4.5 网格线<br />

有时为了方便图形阅读者知道图中元素的更精确的位置,我们可以用<br />

添加背景网格线的办法来辅助读者的视线对齐坐标轴。函数grid()所实现的<br />

就是这一个功能,它的用法较简单:<br />

1 > usage(grid)<br />

grid(nx = NULL, ny = nx, col = "lightgray",<br />

lty = "dotted", lwd = par("lwd"), equilogs = TRUE)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!