### 几何图形 #### 几何图形的视觉属性 视觉属性在ggplot中也称为艺术属性,是人眼能够感知的几何图形的特征,包括大小、形状、颜色、填充等,其中颜色和填充色是所有几何图形都有的属性。 ##### 颜色(colour)和填充色(fill) 颜色和填充色可用名称来指定,ggplot内置657种有名称的颜色,可以直接用颜色名指定颜色。如"rea","green","blue"。这657种颜色名称可用colours()函数列出。 颜色也可用6位16进制数确定,即RGB值,如"#00ff00"代表绿色。如果使用透明度则使用RGBA格式如"#00ff00aa",最后的aa代表透明度。颜色值使用大小写都可以。 ##### 线型(line type) 线型适用于直线、线段、多边形元素。线型也可用名称和数字表示: 0 = blank, 1 = solid, 2 = dashed, 3 = dotted, 4 = dotdash, 5 = longdash, 6 = twodash ```{r} lty <- c("solid", "dashed", "dotted", "dotdash", "longdash", "twodash") linetypes <- data.frame( y = seq_along(lty), lty = lty ) ggplot(linetypes, aes(0, y)) + geom_segment(aes(xend = 5, yend = y, linetype = lty)) + scale_linetype_identity() + geom_text(aes(label = lty), hjust = 0, nudge_y = 0.2) + scale_x_continuous(NULL, breaks = NULL) + scale_y_reverse(NULL, breaks = NULL) ``` 和颜色一样,线型也可以点的有无来表示,线看作有限个点连接而成,在一定位置点是否存在的规律性排列就形成了不同的线型。就某个点而言,存在与否用开关表示,连续的存在的点用一个16进制数表示,紧接其后的空点也用一个16进制数表示,这样点和空点形成两个16进制数对,就好似一个两位的16进制数,如"33"代表3个实点和3个空点,"f1"代表15个实点后跟一个空点。这个数可以是2位也可以是4、6、8位,这样可以定制更加复杂的线型。 ```{r} lty <- c("11", "18", "1f", "81", "88", "8f", "f1", "f8", "ff") linetypes <- data.frame( y = seq_along(lty), lty = lty ) ggplot(linetypes, aes(0, y)) + geom_segment(aes(xend = 5, yend = y, linetype = lty)) + scale_linetype_identity() + geom_text(aes(label = lty), hjust = 0, nudge_y = 0.2) + scale_x_continuous(NULL, breaks = NULL) + scale_y_reverse(NULL, breaks = NULL) ``` 上面标准的5个线型对应的16进制数分别为:44, 13, 1343, 73, 2262. #### ggplot图形元素 ##### 点(point)