本文主要介绍一个关于绘图颜色package——scico[1]。scico包中含有24种不同颜色调色板,可生成连续型与离散型调色板,并且可以配合ggplot2使用。
1、主要函数
scico包中的函数主要包括展示调色板
、显示调色板名称
、显示调色板数据
、生成系列颜色
和ggplot2中图层函数
等几大类。
install.packages("scico")
library(gcookbook)
library(ggplot2)
library(scico)
1.1 展示调色板:scico_palette_show()
展示所有调色板
scico_palette_show()
展示某一个调色板
scico_palette_show(palettes = "roma")
1.2 scico_palette_names():显示调色板名称
scico_palette_names()
"acton" "bam" "bamako" "bamO" "batlow" "batlowK" "batlowW" "berlin" "bilbao" "broc" "brocO" "buda" "bukavu" "cork" "corkO" "davos" "devon" "fes" "grayC" "hawaii" "imola" "lajolla" "lapaz" "lisbon" "nuuk" "oleron" "oslo" "roma" "romaO" "tofino" "tokyo" "turku" "vanimo" "vik" "vikO"
1.3 调色板数据:scico_palette_data()
scico_palette_data(palette = "roma")
# x o r g b
#1 0.000000 1 0.496033 0.100139 0.002216
#2 0.003922 1 0.500910 0.112497 0.006192
#3 0.007843 1 0.505751 0.124087 0.009991
#4 0.011765 1 0.510590 0.135223 0.013845
#5 0.015686 1 0.515401 0.145914 0.017317
#6 0.019608 1 0.520190 0.156248 0.020617
1.4 生成scico颜色:scico()
scico(30, begin = 0, end = 1, palette = "roma")
# [1] "#7E1900" "#883107" "#934510" "#9C5718" "#A5691F" "#AD7B26" "#B68D2E" "#BFA037" "#C9B345" "#D4C759" "#DCD771" "#E3E18A" "#E5E79F"
#[14] "#E2ECB3" "#D9ECC3" "#C8ECCD" "#B1E9D5" "#97E2D9" "#7DD6D9" "#66C7D6" "#58B8D1" "#4EA7CB" "#4698C4" "#3F88BD" "#3978B6" "#346AB1"
#[27] "#2E5CAB" "#274EA4" "#21409E" "#1A3399"
1.5 在ggplot2中调用scico调色板图层函数。主要绘图参数包括
alpha
、begin
、end
、direction
、palettede
等。
scale_fill_scico() #连续型fill映射 scale_fill_scico_d() #离散型fill映射 scale_color_scico() #连续型color映射 scale_color_scico_d() #离散型color映射
2、绘图示例
在ggplot2中使用scico调色板。
2.1 连续型fill映射。scale_fill_scico(palette = "name")
ggplot(mtcars, aes(x = mpg , y = hp, fill = disp)) +
geom_point(shape = 21, size = 7) +
scale_fill_scico(alpha = 1, begin = 0, end = 1, direction = 1, palette = "roma") +
theme_classic()
2.2 连续型color映射。scale_color_scico(palette = "name")
ggplot(mtcars, aes(x = mpg , y = hp, color = disp)) +
geom_point(shape = 1, size = 7) +
scale_color_scico(alpha = 1, begin = 0, end = 1, direction = 1, palette = "roma") +
theme_classic()
2.3 离散型,fill映射。scale_fill_scico_d(palette = "name")
ggplot(mtcars, aes(x = cyl, fill = factor(cyl))) +
geom_bar(color = "black") +
scale_fill_scico_d(palette = "roma") +
theme_classic()
2.4 离散型color映射。scale_color_scico_d(palette = "name")
ggplot(mtcars, aes(x = mpg , y = hp, color = factor(cyl))) +
geom_point(shape = 1, size = 7) +
scale_color_scico_d(alpha = 1, begin = 0, end = 1, direction = 1, palette = "roma") +
theme_classic()
2.5 生成颜色
my_palette <- scico(5, begin = 0, end = 1, direction = -1, palette = "roma")
ggplot(diamonds, aes(cut)) +
geom_bar(fill = my_palette, color = "black") +
theme_classic()
3、其他
关于scico包的更多内容可参考CRAN上的帮助文档。
如有帮助请多多点赞哦!
参考资料
scico: https://cran.r-project.org/web/packages/scico/index.html