ggsci | 让你的配色Nature化
R科研绘图调色板—ggsci包
简介
ggsci
提供了一系列高质量的调色板,其灵感来自于期刊、电影等。ggsci
中的调色板可用于ggplot2
。基本用法:
scale_color_palname()
scale_fill_palname()
#安装并加载ggsci包
install.packages("ggsci")
library("ggsci")
library("ggplot2")
library("gridExtra")
离散型调色板
使用散点图和条形图来演示ggsci
中的调色板。
#示例数据集
data("diamonds")#使用diamonds数据集
head(diamonds)
> head(diamonds)
# A tibble: 6 x 10carat cut color clarity depth table price x y z<dbl> <ord> <ord> <ord> <dbl> <dbl> <int> <dbl> <dbl> <dbl>
1 0.23 Ideal E SI2 61.5 55 326 3.95 3.98 2.43
2 0.21 Premium E SI1 59.8 61 326 3.89 3.84 2.31
3 0.23 Good E VS1 56.9 65 327 4.05 4.07 2.31
4 0.290 Premium I VS2 62.4 58 334 4.2 4.23 2.63
5 0.31 Good J SI2 63.3 58 335 4.34 4.35 2.75
6 0.24 Very Good J VVS2 62.8 57 336 3.94 3.96 2.48
#原始配色
p1 <- ggplot(subset(diamonds, carat >= 2.2), #筛选数据aes(x = table, y = price, colour = cut) #确定xy
) +geom_point(alpha = 0.7) + #画点geom_smooth(method = "loess", alpha = 0.05, size = 1, span = 1) + #画平滑曲线theme_bw() #主题p2 <- ggplot(subset(diamonds, carat > 2.2 & depth > 55 & depth < 70), #筛选数据aes(x = depth, fill = cut) #确定x
) +geom_histogram(colour = "black", binwidth = 1, position = "dodge") + #画直方图theme_bw() #主题
grid.arrange(p1, p2, ncol = 2) #合并两图
Nature配色
p1_npg <- p1 + scale_color_npg()
p2_npg <- p2 + scale_fill_npg()
grid.arrange(p1_npg, p2_npg, ncol = 2)
美国科学促进会(AAAS)
p1_aaas <- p1 + scale_color_aaas()
p2_aaas <- p2 + scale_fill_aaas()
grid.arrange(p1_aaas, p2_aaas, ncol = 2)
新英格兰杂志(NEJM)
p1_lancet <- p1 + scale_color_lancet()
p2_lancet <- p2 + scale_fill_lancet()
grid.arrange(p1_lancet, p2_lancet, ncol = 2)
柳叶刀(Lancet)
p1_lancet <- p1 + scale_color_lancet()
p2_lancet <- p2 + scale_fill_lancet()
grid.arrange(p1_lancet, p2_lancet, ncol = 2)
美国医学会杂志(JAMA)
p1_jama <- p1 + scale_color_jama()
p2_jama <- p2 + scale_fill_jama()
grid.arrange(p1_jama, p2_jama, ncol = 2)
临床肿瘤学杂志(JCO)
p1_jco <- p1 + scale_color_jco()
p2_jco <- p2 + scale_fill_jco()
grid.arrange(p1_jco, p2_jco, ncol = 2)
创:战纪(Tron Legacy)
比较适用于使用黑暗主题。
p1_tron <- p1 + theme_dark() + theme(panel.background = element_rect(fill = "#2D2D2D"),legend.key = element_rect(fill = "#2D2D2D")
) +scale_color_tron()
p2_tron <- p2 + theme_dark() + theme(panel.background = element_rect(fill = "#2D2D2D")
) +scale_fill_tron()
grid.arrange(p1_tron, p2_tron, ncol = 2)
辛普森(The Simpsons)
p1_simpsons <- p1 + scale_color_simpsons()
p2_simpsons <- p2 + scale_fill_simpsons()
grid.arrange(p1_simpsons, p2_simpsons, ncol = 2)
连续型调色板
用相关性热图来展示。
library("reshape2")data("mtcars") #示例数据
cor <- cor(unname(cbind(mtcars, mtcars, mtcars, mtcars)))
cor_melt <- melt(cor)p3 <- ggplot(cor_melt,aes(x = Var1, y = Var2, fill = value)
) +geom_tile(colour = "black", size = 0.3) +theme_bw() +theme(axis.title.x = element_blank(),axis.title.y = element_blank())
GSEA
GSEA调色板的灵感来自GSEA GenePattern生成的热图。
p3_gsea <- p3 + scale_fill_gsea()
p3_gsea_inv <- p3 + scale_fill_gsea(reverse = TRUE)
grid.arrange(p3_gsea, p3_gsea_inv, ncol = 2)
Material Design
The Material Design color palettes are from the material design color guidelines.
先生成一个随机矩阵
library("reshape2")set.seed(42)
k <- 9
x <- diag(k)
x[upper.tri(x)] <- runif(sum(1:(k - 1)), 0, 1)
x_melt <- melt(x)p4 <- ggplot(x_melt, aes(x = Var1, y = Var2, fill = value)) +geom_tile(colour = "black", size = 0.3) +scale_x_continuous(expand = c(0, 0)) +scale_y_continuous(expand = c(0, 0)) +theme_bw() + theme(legend.position = "none", plot.background = element_blank(),axis.line = element_blank(), axis.ticks = element_blank(),axis.text.x = element_blank(), axis.text.y = element_blank(),axis.title.x = element_blank(), axis.title.y = element_blank(),panel.background = element_blank(), panel.border = element_blank(),panel.grid.major = element_blank(), panel.grid.minor = element_blank())
用19种Material Design调色板绘制矩阵:
grid.arrange(p4 + scale_fill_material("red"), p4 + scale_fill_material("pink"),p4 + scale_fill_material("purple"), p4 + scale_fill_material("deep-purple"),p4 + scale_fill_material("indigo"), p4 + scale_fill_material("blue"),p4 + scale_fill_material("light-blue"), p4 + scale_fill_material("cyan"),p4 + scale_fill_material("teal"), p4 + scale_fill_material("green"),p4 + scale_fill_material("light-green"), p4 + scale_fill_material("lime"),p4 + scale_fill_material("yellow"), p4 + scale_fill_material("amber"),p4 + scale_fill_material("orange"), p4 + scale_fill_material("deep-orange"),p4 + scale_fill_material("brown"), p4 + scale_fill_material("grey"),p4 + scale_fill_material("blue-grey"),ncol = 6
)
非ggplot图
如果不是··
作的图,可以直接调用颜色参数。
mypal <- pal_npg("nrc", alpha = 0.7)(9)
mypal
library("scales")
show_col(mypal)
总结
下表总结了所有可用的调色板。
Name | Scales | Palette Types | Palette Generator |
---|---|---|---|
NPG |
scale_color_npg() scale_fill_npg()
|
"nrc"
|
pal_npg()
|
AAAS |
scale_color_aaas() scale_fill_aaas()
|
"default"
|
pal_aaas()
|
NEJM |
scale_color_nejm() scale_fill_nejm()
|
"default"
|
pal_nejm()
|
Lancet |
scale_color_lancet() scale_fill_lancet()
|
"lanonc"
|
pal_lancet()
|
JAMA |
scale_color_jama() scale_fill_jama()
|
"default"
|
pal_jama()
|
JCO |
scale_color_jco() scale_fill_jco()
|
"default"
|
pal_jco()
|
UCSCGB |
scale_color_ucscgb() scale_fill_ucscgb()
|
"default"
|
pal_ucscgb()
|
D3 |
scale_color_d3() scale_fill_d3()
|
"category10" "category20" "category20b" "category20c"
|
pal_d3()
|
LocusZoom |
scale_color_locuszoom() scale_fill_locuszoom()
|
"default"
|
pal_locuszoom()
|
IGV |
scale_color_igv() scale_fill_igv()
|
"default" "alternating"
|
pal_igv()
|
COSMIC |
scale_color_cosmic() scale_fill_cosmic()
|
"hallmarks_light" "hallmarks_dark" "signature_substitutions"
|
pal_cosmic()
|
UChicago |
scale_color_uchicago() scale_fill_uchicago()
|
"default" "light" "dark"
|
pal_uchicago()
|
Star Trek |
scale_color_startrek() scale_fill_startrek()
|
"uniform"
|
pal_startrek()
|
Tron Legacy |
scale_color_tron() scale_fill_tron()
|
"legacy"
|
pal_tron()
|
Futurama |
scale_color_futurama() scale_fill_futurama()
|
"planetexpress"
|
pal_futurama()
|
Rick and Morty |
scale_color_rickandmorty() scale_fill_rickandmorty()
|
"schwifty"
|
pal_rickandmorty()
|
The Simpsons |
scale_color_simpsons() scale_fill_simpsons()
|
"springfield"
|
pal_simpsons()
|
GSEA |
scale_color_gsea() scale_fill_gsea()
|
"default"
|
pal_gsea()
|
Material Design |
scale_color_material() scale_fill_material()
|
"red" "pink" "purple" "deep-purple" "indigo" "blue" "light-blue" "cyan" "teal" "green" "light-green" "lime" "yellow" "amber" "orange" "deep-orange" "brown" "grey" "blue-grey"
|
pal_material()
|
参考
https://nanx.me/ggsci/articles/ggsci.html
代码领取:后台回复**“ggsci”**即可领取完整代码。
往期内容:
单细胞转录组|Seurat 4.0 使用指南
R绘图实战|GSEA富集分析图
ggsci | 让你的配色Nature化相关推荐
- 木舟总结 | 2021年推文笔记分类汇总
木舟总结 |2021年推文笔记分类汇总 先打个广告 木舟营业|关于付费咨询.有偿作图/数据分析.合作以及商务推广等事宜 高分文章图表复现系列 (免费教程+代码领取)|跟着Cell学作图系列合集 跟着C ...
- ggcorrplot | 简单的相关性热图绘制
ggcorrplot的基础用法指南 ggcorrplot提供了一种对相关矩阵进行重新排序的解决方案,并在相关图上显示显著性水平.它还包括一个用于计算相关p值矩阵的函数. 安装和加载 install.p ...
- Matlab顶级期刊配色工具Rggsci
颜色搭配是一件非常让人头疼的事情. 一方面,如果忽视了配色,就好像是做菜没放盐,总会感觉少些味道. 另一方面,如果太注重配色,又感觉不是很有必要,毕竟数据结果好看才是第一位的. 想要平衡两者,一个简单 ...
- 一行代码添加P值的可视化技巧分享~~
点击上方"DataCharm",选择"星标"公众号 在一些常见的统计图表中经常需要在一些图表中添加P值,那么今天小编给大家汇总一下关于统计图表中P值的添加方法. ...
- oracle 11g goldengate与oracle 11g数据同步
1.下载,安装goldengate软件(两个节都需要安装) glodengate下载地址:http://pan.baidu.com/s/1pLtVTJt 密码:exob [oracle@oracleo ...
- c++ 舞伴配对问题_R绘图:配对样本差异表达作图ggpubr
R绘图往期回顾: R绘图:唱一半的歌,画一半的图 gghalves R绘图:gggibbous,基于ggplot2的Moon charts R绘图:ggeconodist,基于ggplot2的另类箱图 ...
- 淡雅灰低三角形背景几何风年终总结商务通用ppt模板
淡雅灰低三角形背景几何风年终总结商务通用ppt模板 本模板共23P 淡雅灰低三角形背景 几何方块裁图几何风创意设计封面 商务红配色 扁平化微立体两种风格图表 适合年终总结.工作汇报等场景应用的商务通用 ...
- 差异表达基因热图怎么看_R绘图 雷达图-单基因泛癌差异表达的另类展现形式
往期回顾: R语言学习系列之"多变的热图" 蚂蚁金服在线可视化引擎 G2 R绘图:无与伦比的华丽风行(桑基图) R绘图:相关性分析与作图(单基因相关性) R绘图:相关性分析与作图R ...
- R统计绘图-One-Way MANOVA
存在两个及以上连续结果(或响应)变量的ANOVA被称为多变量方差分析(Multivariate Analysis of Variance,MANOVA).例如,将小鼠分为处理A和处理B两组后,测量小鼠 ...
- 掘金 Android 文章精选合集
掘金官方 2017.07.10 16:42* 字数 175276 阅读 46638 评论 12 喜欢 653 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有 ...
最新文章
- 虚拟化如何做实?详解戴尔2.0版解决方案
- go监听mysql事件更新,有没有一种方法可以“监听”数据库事件并实时更新页面?...
- 挡d挡切换_吉行贴士 | 从N-D换挡,就是如此轻松
- 【移动开发】Android应用开发者应该知道的东西
- 批处理文件将多台连接的手机安装同一个APP
- 灯效控制器和rgb控制器_更具个性的RGB风扇,机箱里的魔术师,九州风神MF120GT开箱...
- 微课|中学生可以这样学Python(例11.2):tkinter猜数游戏(1)
- 抖音为什么能让人上瘾?
- 自注意力机制_自注意力机制在计算机视觉中的应用【附PPT与视频资料】
- 为什么谷歌被骂上热搜一点也不冤,详解FLoC背后联邦计算
- springcloud config不重启修改配置_SpringCloud实战-Bus消息总线(动态修改配置)
- 基于java的仓库管理系统_基于Java的仓库管理系统.doc
- 揭秘淘宝286亿海量图片存储与处理架构,海量小文件存储的解决方案
- 如何让你的本地上的项目不用部署到服务器也能让外网看到?使用ngrok内网穿透实现
- 201606中通笔试题
- 武汉大学计算机电气,武汉大学电气与自动化学院
- oracle 结果集已耗尽_SQLException:耗尽结果集
- SimulateSlidingTrack滑动轨迹库:一行代码获取仿真手动滑动轨迹
- 苏宁易购董事会改选并聘任张近东为名誉董事长;ASSASSINA莎辛那首个香氛沙龙闪现网红玻璃森林 | 知消...
- 全排列与逆序数的组合