RColorBrewer包
分为三种类型:
1.连续型调色板: 适用于从低到高(渐变)的有序数据。
2.离散型调色板: 同时强调中端临界值和数据范围两端的极端值。
3.定性调色板: 适用于名义型或分类型变量。 它们并不代表组之间的大小差异。
绘图应用
需要注意的是RColorBrewer最少一次产生三种颜色,所以对于只需要两种颜色的作图,使用这个包的时候会报错
# 通过指定名字来查看调色板
display.brewer.pal(n = 8, name = 'RdBu')
RdBu
# RColorBrewer绘制条形图
barplot(c(2,5,7), col=brewer.pal(n = 3, name = "RdBu"))
Screenshot 2020-04-25 at 2.14.49 PM.png
Wes Anderson包
BiocManager::install("wesanderson")
library(wesanderson)
# See all palettes
names(wes_palettes)
[1] "BottleRocket1" "BottleRocket2" "Rushmore1" "Rushmore" "Royal1"
[6] "Royal2" "Zissou1" "Darjeeling1" "Darjeeling2" "Chevalier1"
[11] "FantasticFox1" "Moonrise1" "Moonrise2" "Moonrise3" "Cavalcanti1"
[16] "GrandBudapest1" "GrandBudapest2" "IsleofDogs1" "IsleofDogs2"
wesanderson
绘图应用
barplot(c(2,5,7), col = wes_palette(n=3, name="GrandBudapest1"))
barplot.png
创建n个连续颜色的向量
可以使用函数rainbow(n), heat.colors(n), terrain.colors(n), topo.colors(n)和cm.colors(n)生成n个连续颜色的向量
#Create a vector of n contiguous colors
# Use rainbow colors
barplot(1:5, col=rainbow(5))
# Use heat.colors
barplot(1:5, col=heat.colors(5))
# Use terrain.colors
barplot(1:5, col=terrain.colors(5))
# Use topo.colors
barplot(1:5, col=topo.colors(5))
# Use cm.colors
barplot(1:5, col=cm.colors(5))
Screenshot 2020-04-25 at 2.23.48 PM.png
产生渐变颜色colorRamp()和colorRampPalette()
colorRamp()和colorRampPalette()都可用于建立颜色板。想象一下你现在有一个色板,色板上有红色,蓝色,和白色,你就可以用colorRamp()和colorRampPalette()基于这三个颜色就行调色,两者的不同在于,colorRamp() 可以指定一个小数,返回一个指定的颜色值,需要用rgb方法转换;
colorRampPalette()返回指定数量的颜色值,两个方法可以达到相同的效果:
par(mfrow = c(1, 2))
b2p1 <- colorRampPalette(c("red", "white","blue"))
b2p2 <- colorRamp(c("red", "white","blue"))
barplot(rep(1, 12), axes=F, col = b2p1(12), border = b2p1(12),
main = "colorRampPalette")
rgb( b2p2(seq(0, 1, length = 12)), max = 255)
barplot(rep(1, 12), axes=F,col = rgb( b2p2(seq(0, 1, length = 12)), max = 255),
border = rgb( b2p2(seq(0, 1, length = 12)), max = 255), main = "colorRamp")
Screenshot 2020-04-25 at 2.25.35 PM.png
搬砖from:R语言配色方案: Colors in R
网友评论