R中的颜色
R提供了657个颜色名字,还有rbg()函数来自定义颜色,在cairo_pdf中还支持透明度调节
R提供了许多调色板,可以查看默认调色板palette()
,也可以使用参数col=1, 2, 3···
等使用默认的调色板
col2rgb函数可以把颜色名转为rgb格式的颜色
palette()
## [1] "black" "red" "green3" "blue" "cyan" "magenta" "yellow" "gray"
> col2rgb(palette())
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
## red 0 255 0 0 0 255 255 190
## green 0 0 205 0 255 0 255 190
## blue 0 0 0 255 255 255 0 190
1. 取色器软件
推荐just color picker
2. 调色板相关包
RColorBrewer
提供了18种渐变、8种量变、9种不同的调色板
RColorBrewer::display.brewer.all()
colorspace
colorspace包有一个图形界面,能够在R中很方便地自定义调色板,并预览效果,非常推荐使用
colorspace::choose_palette()
具体使用方法
- 该包还包括一些调色板如rainbow_hcl, terrain_hcl, heat_hcl等,具体使用参考http://www.hclwizard.org/r-colorspace/
- 也可以使用在线版colorspace,http://hclwizard.org/hclwizard/
## Generating some synthetic data
x1 <- rnorm(20,mean=2); y1 <- rnorm(20,mean=1)
x2 <- rnorm(20,mean=3); y2 <- rnorm(20,mean=2)
x3 <- rnorm(20,mean=1); y3 <- rnorm(20,mean=3)
## Loading the library colorspace
library('colorspace')
## Call choose_palette. Note: interactive GUI opens
pal <- choose_palette()
## Picking 3 different colors out of your palette
colors_A <- pal(3)
## And picking 3 colors out of the HCL rainbow palette
colors_B <- rainbow_hcl(3)
## Create a plot containing 2 subplots
par(mfrow=c(1,2))
## Makes a scatterplot with your own choosen colors
plot(c(x1,x2,x3),c(y1,y2,y3),type='n',xlab='x values',
ylab='y values',main='Example A: scatterplot')
points(x1,y1,col=colors_A[1])
points(x2,y2,col=colors_A[2])
points(x3,y3,col=colors_A[3])
## The same plot with the rainbow_hcl colors
plot(c(x1,x2,x3),c(y1,y2,y3),type='n',xlab='x values',
ylab='y values',main='Example B: scatterplot')
points(x1,y1,col=colors_B[1])
points(x2,y2,col=colors_B[2])
points(x3,y3,col=colors_B[3])
在线网站colorbrewer2
与colorspace类似,但是只能显示地图的模拟效果,非常喜欢网站提供的配色方案
网址如下:
http://colorbrewer2.org/
参考:
http://www.springer.com/us/book/9783319497501
3. colorpicker包提供的实时调整颜色功能
绘图图形后,为了精心挑选看起来顺眼的颜色,我们不得不更改颜色相关代码,而colorpikcer包实现了颜色选择和绘制图形的高度结合,使我们不需要手动更改代码就能实现颜色的变化,选择plot相关的代码,点击addin中的Plot Colour Helper,即打开默认浏览器,并与当前R session享用共同环境,修改后的代码点击done后会自动更新到Rstudio的编辑器界面
如该文http://www.jianshu.com/p/e448b469f0b2中的颜色就是这样选择的,最后点击done后会自动添加如下变量CPCOLS
变量,如
CPCOLS <- c("#F01641", "#A19999")
具体相关内容请移步github:https://github.com/daattali/colourpicker
shinyjs包提供的颜色选择器(与colorpicker包同一作者)
可以很方便地选择颜色并粘贴为R的向量格式
shinyjs:::colourPickerAddin()
4. 参考别人图片的配色
如:http://www.r-graph-gallery.com/all-graphs/