R语言可视化--颜色

RColorBrewer包
三类调色板:sequential / diverging / qualitative
调色板的信息可以与colorRamp / colorRampPalette结合使用

  1. 从一个极端到另一个极端,慢慢过渡呈现顺序

  2. 两边的颜色比较亮,中间的颜色比较暗,适合凸显处在极端的数值,想进行高低对比。

  3. 颜色对比鲜明,适合呈现分类变量,凸显他们的差异和对比。

在RStudio中进行:

  • 首先是colorRamp
> pal <-colorRamp(c("red","blue"))
> pal(0)  #红色
     [,1] [,2] [,3]
[1,]  255    0    0
> pal(1)  #蓝色
     [,1] [,2] [,3]
[1,]    0    0  255
> pal(0.5) # 红色和蓝色之间的颜色
      [,1] [,2]  [,3]
[1,] 127.5    0 127.5
> pal(seq(0,1,len=10))  #红色和蓝色之间的10个颜色
           [,1] [,2]      [,3]
 [1,] 255.00000    0   0.00000
 [2,] 226.66667    0  28.33333
 [3,] 198.33333    0  56.66667
 [4,] 170.00000    0  85.00000
 [5,] 141.66667    0 113.33333
 [6,] 113.33333    0 141.66667
 [7,]  85.00000    0 170.00000
 [8,]  56.66667    0 198.33333
 [9,]  28.33333    0 226.66667
[10,]   0.00000    0 255.00000
  • colorRampPalette
> pal<-colorRampPalette(c("red","yellow"))
> pal(1)   #十六进制数表示的红色
[1] "#FF0000"
> pal(2)   #十六进制数表示的黄色
[1] "#FF0000" "#FFFF00" 
> pal(10)  #
 [1] "#FF0000" "#FF1C00" "#FF3800" "#FF5500" "#FF7100" "#FF8D00" "#FFAA00" "#FFC600" "#FFE200"
[10] "#FFFF00"
  • RColorBrewer包
#三列分别表示:最多可以使用颜色的数目、种类属于哪一类,是否影响色盲人士
> library(RColorBrewer)
> brewer.pal.info
         maxcolors category colorblind
BrBG            11      div       TRUE
PiYG            11      div       TRUE
PRGn            11      div       TRUE
PuOr            11      div       TRUE
RdBu            11      div       TRUE
RdGy            11      div      FALSE
RdYlBu          11      div       TRUE
RdYlGn          11      div      FALSE
Spectral        11      div      FALSE
Accent           8     qual      FALSE
Dark2            8     qual       TRUE
Paired          12     qual       TRUE
Pastel1          9     qual      FALSE
Pastel2          8     qual      FALSE
Set1             9     qual      FALSE
Set2             8     qual       TRUE
Set3            12     qual      FALSE
Blues            9      seq       TRUE
BuGn             9      seq       TRUE
BuPu             9      seq       TRUE
GnBu             9      seq       TRUE
Greens           9      seq       TRUE
Greys            9      seq       TRUE
Oranges          9      seq       TRUE
OrRd             9      seq       TRUE
PuBu             9      seq       TRUE
PuBuGn           9      seq       TRUE
PuRd             9      seq       TRUE
Purples          9      seq       TRUE
RdPu             9      seq       TRUE
Reds             9      seq       TRUE
YlGn             9      seq       TRUE
YlGnBu           9      seq       TRUE
YlOrBr           9      seq       TRUE
YlOrRd           9      seq       TRUE
  • 如何使用RColorBrewer和colorRampPalette结合起来
#调用brewer.pal包里面的greens调色板,从中取出3个颜色,传入调色板colorRampPalette。数据集为volcano,以3个端点颜色为进行取值。
cols<-brewer.pal(3,"Greens")
pal<-colorRampPalette(cols)
image(volcano,col=pal(20))

呈现出这些颜色的原因是我们选取的调色板中的3个颜色如下

#查看greens调色板的3个颜色
display.brewer.pal(3,"Greens")

posted @ 2017-07-21 20:23  三门曾经  阅读(18183)  评论(0编辑  收藏  举报