02.07.2013 Views

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

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

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

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

40 第四章 元素<br />

每一类调色板下有若干种具体的实现,例如Blues是连续型调色板下的一<br />

种,用以蓝色主题的渐变颜色:<br />

1 > library(RColorBrewer)<br />

2 > brewer.pal(9, "Blues")<br />

[1] "#F7FBFF" "#DEEBF7" "#C6DBEF" "#9ECAE1" "#6BAED6" "#4292C6"<br />

[7] "#2171B5" "#08519C" "#08306B"<br />

所有调色板名称及其展示参见图4.1。 这些调色板并非一些简单的颜色<br />

组合,而是有一定科学根据的。 例如离散型调色板下的颜色对大多数<br />

人来说都有较好的区分度,甚至色盲也可以辨认其中不同类的颜色。<br />

如果用户对颜色选取拿捏不准,不妨用这个包来生成颜色。 实际上这<br />

个R包是一款叫ColorBrewer的产品的重新实现,更多信息可以访问网站<br />

http://www.colorbrewer.org/。<br />

4.1.4 渐变色的简单原理及应用<br />

在此我们特别用一节来讲述“渐变色”,原因在于在图形中应用渐变色<br />

往往能让图形看起来更美观、避免单调的颜色在图形中显得突兀。不难想<br />

象,所谓“渐变”,也就是逐渐变化的意思,这种变化必然对应着某种单调<br />

或非单调的(可导)函数,这些函数用来控制颜色值逐步变化。最简单的<br />

例子莫过于线性函数:从一种颜色值到另一种颜色值线性变化。比如我们<br />

在rgb()函数中用一元线性函数控制绿色在[0, 1]上的取值,同时将红色和<br />

蓝色分别控制为1和0,那么我们将得到从纯红色到黄色的一个颜色渐变。<br />

如:<br />

1 > (x = rgb(1, seq(0, 1, length = 30), 0))<br />

[1] "#FF0000" "#FF0900" "#FF1200" "#FF1A00" "#FF2300" "#FF2C00"<br />

[7] "#FF3500" "#FF3E00" "#FF4600" "#FF4F00" "#FF5800" "#FF6100"<br />

[13] "#FF6A00" "#FF7200" "#FF7B00" "#FF8400" "#FF8D00" "#FF9500"<br />

[19] "#FF9E00" "#FFA700" "#FFB000" "#FFB900" "#FFC100" "#FFCA00"<br />

[25] "#FFD300" "#FFDC00" "#FFE500" "#FFED00" "#FFF600" "#FFFF00"<br />

1 > # 读者不妨用barplot(rep(1, 30), col = x)看看效果<br />

显然本小节的内容与前一小节所讲到的调色板是一致的,只不过调色<br />

板是预先配置好了的渐变色系列;我们在这里“重复”讲述渐变色的简单

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

Saved successfully!

Ooh no, something went wrong!