ggplot2之颜色设置

该文章为个人为了复习总结的笔记,参考来源为:

https://www.sohu.com/a/348752646_785442

https://www.jianshu.com/p/567e4a2c295a


1.简单颜色分配

①color:对点和线的颜色进行调整;当为柱状图或者空心散点时,color仅改变边框颜色。

eg:红色外框的条形图

>ggplot(df, aes(x=type, y=number)) + geom_bar(stat="identity", color="#FF9999")

②fill:改变一些作为填充对象的颜色。

eg:黑色外框、红色填充的条形图

>ggplot(df, aes(x=type, y=number)) + geom_bar(stat="identity", fill="#FF9999", colour="black")

2.用不同颜色来表示不同变量

除了对颜色进行全局性的修改,也可以将变量值映射为颜色,就是用颜色来表示某个变量,需要将它置于aes 命令之中。同时在对图形属性进行映射之后,可使用标尺控制这些属性的显示方式,其显示规律如下:

/ggplot2中提供了两种色标功能,用于使用rcolorbrewer调色板:

scale_fill_brewer()用于箱形图,条形图,小提琴图,点图等

scale_color_brewer()用于行和点


/ggplot2的scale系列函数一般使用三个单词,用_连接,如scale_fill_gradient和 scale_color_continuous等。

第一个单词都是scale;

第二个是color和fill等可更改的颜色参数,对应分组使用的颜色函数即可。比如柱状图,fill是柱子的填充颜色,这时就使用scale_fill系列函数来更改颜色。点图使用color分组,则使用scale_color_系列函数来更改颜色;

第三个单词的不同,可分为以下两种情况:

①离散型:在颜色变量是离散变量的时候使用,比如分类时每一类对应一种颜色。

1)manual :直接指定分组使用的颜色

#直接指定颜色

>p + scale_fill_manual(values=c("red", "blue", "green", "yellow","orange"))

#或者直接指定对应分组颜色

>p + scale_fill_manual(values=c("Fair" = "red", "Good" = "blue", "Very Good" = "green" , Premium = "orange", Ideal = "yellow"))

#设置颜色透明度

>p + scale_fill_manual(values=alpha(c("#6495ED","#969696",0.5)))

2)hue:通过改变色相(hue)饱和度(chroma)亮度(luminosity)来调整颜色

3)brewer:使用ColorBrewer的颜色

/ brewer用于调用包ColorBrewer 中的配色方案,要想了解所有的调色板,可以使用RColorBrewer::display.brewer.all查看。

/显示某个色盘的颜色

>display.brewer.pal(n, name)

函数参数的描述:

n:调色板中不同颜色的数量,最小值为3,最大值取决于调色板。

name:ColorBrewer列表中的调色板名称。 例如name = RdBu。

/想要显示调色盘中某个色块的名称

>library(RColorBrewer)

>brewer.pal(n = 8, name = "Dark2")

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

/brewer的使用案例

>p + scale_fill_brewer(palette="Dark2")  #填充箱型图、条形图、小提琴图、点图等

>p + scale_color_brewer(palette="Dark2")  #用于点等

4)grey:使用不同程度的灰色

#通过start end 两个参数指定,0为黑,1为白,都在0-1范围内

eg:p + scale_fill_grey  #使用不同程度的灰色

p + scale_fill_grey(start=1, end=0)   #设定灰度范围


连续型:颜色变量是连续变量的时候使用,比如0-100的数,数值越大颜色越深。

1)gradient创建渐变色

p <- ggplot(df, aes(x, y)) + geom_point(aes(colour = z1))

gradient 创建渐变色#参数设定节点颜色

p + scale_color_gradient(low = "white", high = "black")

#设置中间过渡色

p + scale_color_gradient2(low = "red", mid = "white", high = "blue")

#使用R预设调色板

p + scale_color_gradientn(colours =rainbow(10))

2) distiller 使用ColorBrewer的颜色

#将ColorBrewer的颜色应用到连续变量上

p + scale_color_distiller(palette = "Spectral")

p + scale_color_distiller(palette = "Greens")

3) identity 使用color变量对应的颜色,对离散型和连续型都有效

你可能感兴趣的:(ggplot2之颜色设置)