ggsci是R中的一个包,提供了一系列颜色给ggplot2调色。里面包括了一些知名杂志期刊或者软件(甚至是知名科幻电影、动画等)的经典配色风格,对于科研绘图是相当有帮助的。下边介绍一下这个包的用法和内容,如果想要自己查看说明,可以在R中输入
代码语言:javascript复制vignette("ggsci")
来快速查阅。 首先可以通过以下两种方式下载ggsci:
代码语言:javascript复制# download ggsci package
install.packages("ggsci")
#install.packages("devtools")
devtools::install_github("nanxstats/ggsci")
下载下来后,可以用diamonds数据集来看配色效果:
代码语言:javascript复制library(ggsci)
library(ggplot2)
library(gridExtra)
data('diamonds')
diamonds数据集的内容主要是:
image
由于原数据太大,将对数据进行一些筛选再进行作图,先用ggplot做出点图(scatter plot)和箱型图(boxplot):
代码语言:javascript复制# 散点图
p1 = ggplot(subset(diamonds, carat > 2.2),aes(x = table, y = price, colour = cut)) geom_point(alpha = 0.7) geom_smooth(method = "loess", alpha = 0.05, size = 1, span = 1) theme_bw()
p1
# 箱线图
p2 = ggplot(subset(diamonds, carat > 2.2), aes(x = color, y = price, fill = color)) geom_boxplot(color = 'black') theme_bw()
p2
散点图:
image
箱线图:
image
下面根据ggsci中的scale_color_xx或者scale_fill_xx(xx为杂志或者软件的名字)配色。
新英格兰杂志(NEJM):
代码语言:javascript复制p1_nejm = p1 scale_color_nejm()
image
柳叶刀(Lancet):
代码语言:javascript复制p1_lancet = p1 scale_color_lancet()
image
基因组可视化软件IGV:
代码语言:javascript复制p1_igv = p1 scale_color_igv()
image
知名动画瑞克和莫蒂:
代码语言:javascript复制p1_rick = p1 scale_color_rickandmorty()
image
科幻电影创战纪(Tron: Legacy):
代码语言:javascript复制p1_tron = p1 theme_dark() scale_color_tron()
image
还有一些别的配色没有展示,感兴趣可以自己查阅探索~
学习更多的生信/编程小知识,欢迎关注~