美文网首页数据可视化
R语言中的渐变色

R语言中的渐变色

作者: RedStones | 来源:发表于2020-01-04 20:28 被阅读0次

    如何使用R语言画出漂亮的图,颜色很重要,既要协调,又有有一定的分辨力。

    1. 彩虹色

    可以拿到任意多个颜色,当然颜色越多,分辨力越低。

    barplot(rep(1,8), col=rainbow(8),border=NA)

    rainbow(8)

    [1] "#FF0000FF" "#FFBF00FF" "#80FF00FF" "#00FF40FF" "#00FFFFFF" "#0040FFFF"

    [7] "#8000FFFF" "#FF00BFFF"

    barplot(rep(1,20), col=rainbow(20),border=NA) #分辨力降低

    2. 其他预置渐变色

    par(mfrow=c(4,1), mar=c(0,2,2,0) )

    n=10

    #heat.colors()从红色渐变到黄色,再变到白色

    barplot(rep(1,n), col= heat.colors(n), border=NA, main="heat.colors") 

    #terrain.colors() 从绿色渐变到黄色,再到棕色,最后到白色 

    barplot(rep(1,n),col=terrain.colors(n), border=NA, main="terrain.colors")

    #topo.colors() 从蓝色渐变到青色,再到黄色,最后到棕色 

    barplot(rep(1,n),col=topo.colors(n), border=NA, main="topo.colors")

    #cm.colors() 从青色渐变到白色,再到粉红色

    barplot(rep(1,n),col=cm.colors(n), border=NA, main="cm.colors")

    3.使用预制配色集合 Set2/Dark2,插值生成任意个颜色

    (1)

    library(RColorBrewer)

    display.brewer.all() #显示全部颜色集合

    # 挑选某一个集合

    #barplot(rep(1,8),col=brewer.pal(8,"Dark2")[1:8]) #基础语法

    myColors=brewer.pal(8,"Dark2")[1:8] #Dark2主题有8种颜色

    par(mfrow=c(4,1), mar=c(0,2,2,0) )

    barplot(rep(1,8),col= myColors, main="Dark2"  )

    #

    n=15 #nrow(df);

    barplot(rep(1, n ),col= colorRampPalette(colors = myColors)( n ),main="Default:linear") #则由8种生成15种颜色

    barplot(rep(1, n ),col= colorRampPalette(colors = myColors, interpolate ="linear")( n ),main="linear" ) #插值方式

    barplot(rep(1, n ),col= colorRampPalette(colors = myColors, interpolate ="spline")( n ),main="spline") #插值方式

    colSet2 # 获取颜色16进制表示

    # [1] "#1B9E77" "#D95F02" "#7570B3" "#E7298A" "#66A61E" "#E6AB02" "#A6761D" "#666666"

    解释:

    n=5;barplot(rep(1,n), col=colorRampPalette(colors = c('red', 'white'))( n ))

    colorRampPalette 函数可以混合任意两种及更多颜色,通过插值,生成更多色彩。

    (2) 目测其他几个预制颜色集合

    n=8;barplot(rep(1,n),col= brewer.pal(n,"Set2")[1:n] ) # set2 共8种颜色

    ref:

    biomooc.com

    相关文章

      网友评论

        本文标题:R语言中的渐变色

        本文链接:https://www.haomeiwen.com/subject/ejyfactx.html