以前遇到过一个问题,每次使用ggplot绘图的时候,总会纠结包提供的配色板,尤其是涉及在一张图使用20+种配色时,会默认使用渐进色,这让不同组别的样品在肉眼上难以区分。那如何修改ggplot中默认的颜色模板呢?我们可以通过设置options中的变量值来完成。
首先我们要知道,ggplot上色的修改函数为scale_color/fill_discrete/continuous,那我们去看下它的帮助文档,发现它的颜色类型默认是由一个参数设置的type =getOption("ggplot2.discrete.colour")
(在fill或continuous下会稍有不同),换句话说,我们只需要修改这个环境变量即可。
默认情况下我们得到下面的图
ggplot(iris,aes(x=iris$Sepal.Length,iris$Sepal.Width,color=iris$Species))+geom_point()
image.png
options(ggplot2.discrete.colour=c("red","blue","yellow"))
ggplot(iris,aes(x=iris$Sepal.Length,iris$Sepal.Width,color=iris$Species))+geom_point()
image.png
当然,这里如果你设置的颜色太少,那默认还是会用系统预设的颜色模板哦
有关预设options的情况还有很多,比如可以预先设置安装r包的镜像等等,这样你在安装软件的时候就不用选择镜像啦!
options(CRAN="https://mirrors.nju.edu.cn/CRAN/")
查看所有预设的options,可以使用函数options()
网友评论