R语言绘图配色-RcolorBrewer包学习及进阶

画图的过程中发现颜色太丑了,简单学一下配色。

RcolorBrewer包

library(RColorBrewer)
display.brewer.all() #展示所有的色板
display.brewer.pal(8,'Accent')# 展示'Accent'色板中8个颜色
Rplot.png

看到有三种配色方法
sequential: 生成渐变的颜色,标记连续型数据大小,可选择颜色种类范围是3~9
qualitative:离散的,生成彼此差异明显的颜色,标记分类变量。可选择颜色种类,最小是3,最大根据每个色板的不同。
diverging:分散的,两头重,中间浅,标记数据离群点。可选择颜色种类范围是3~11
根据需要选择配色的名字,比如选择Accent

col <- brewer.pal(8,'Accent')# 从Accent 方案中选出8个颜色,并赋值给col
plot(1:8,rep(1,8),col= col,pch=16,cex=2)#绘图看一下颜色
Rplot01.png
  • 从配色方案中选出自己喜欢的颜色,调制自己喜欢的色板
col1<- brewer.pal(8,'Dark2')
col2 <- brewer.pal(8,"Accent")
mycolor <- c(col1[5:8],col2[1:4])#挑选Dark2中后四个,accent中的前四个
plot(1:8,rep(1,8),col= mycolor,pch=16,cex=2)
Rplot02.png
  • Accent中只有8个颜色,假如我有16个变量,怎么办呢?colorRampPalette()函数

使用colorRampPalette()扩展颜色

#函数正常用法:从blue到red,生成10个渐变色
col <- colorRampPalette(c('blue','red'))(10)
plot(1:10,rep(1,10),col= col,pch=16,cex=2)
Rplot03.png
  • 使用 colorRampPalette()扩展调色板中的颜色
# 从只有8个颜色的Accent中生成16个颜色
col <- colorRampPalette(brewer.pal(8,'Accent'))(16)
plot(1:16,rep(1,16),col= col,pch=16,cex=2)
Rplot04.png

其他低阶点的,可以看看
学习地址 https://www.bilibili.com/video/BV1oa4y1x7gT?t=99

内置函数colors ()

colors()#展示657种颜色名称
#通过名称调用颜色

调色板

rainbow()
heat.colors()
terrain.colors()
topo.colors()
cm.colors()
plot(1:10,rep(1,10),col= rainbow(10,alpha = 0.5),pch=16,cex=3)# alpha 设置透明度
plot(1:10,rep(1,10),col= terrain.colors(10),pch=16,cex=3)
Rplot06.png

推荐阅读更多精彩内容