生信自学网-速科生物-生物信息学数据库挖掘视频教程

主页 > TCGA >

R配色收集3 ggsci

R配色收集3 ggsci 

ggsci提供了一系列高质量的调色板,其灵感来自于科学期刊、数据可视化图书馆、科幻电影和电视节目中使用的色彩。ggsci中的调色板可以作为ggplot2级别提供。下面我们来了解一下ggsci。

ggsci安装

  •  
install.packages("ggsci")

 

做一个示例data

 

  •  
  •  
  •  
  •  
  •  
# 自带示例钻石数据library("ggplot2")data("diamonds"# 选取部分 当示例数据  data<-subset(diamonds, carat >=2.2)

 

下面画图:y轴都是price,x轴都是table

 

 

 

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
p1 =ggplot(data, aes(x = table, y = price, colour = cut)) +           # 点            geom_point(alpha=0.7,size=4) +           # 曲线拟合, 方法:局部线性回归loess           geom_smooth(method="loess", alpha =0.05, size =2, span =1) +           # 背景           theme_bw()p1

 

 

position  5个参数可选:stack、dodge、fill、identity、jitter

dodge数据并列放置

stack数据堆叠放置 

  •  
  •  
  •  
  •  
  •  
  •  
p2 =ggplot( data,aes(x = depth, fill = cut)) +            #柱状图  colour描边颜色, binwidth柱子宽度,             geom_histogram(colour="black", binwidth =3,                            position ="dodge") +            theme_bw()p2

 

加载ggsci

  •  
library("ggsci")

 

配色方案为sacle_color_xx杂志名,

                 scale_fill_xx杂志名

 

color和fill用法区别复习:

colour :【线】和【点】的颜色,如colour=“red” 

fill : 【形状图形】填充颜色,如 fill=“blue

 

 

 

《自然》: npg  (Nature Publishing Group自然出版集团缩写)

 

  •  
  •  
p3<-p1 + scale_color_npg()  #点的颜色是 colorp3

 

 

 

《新英格兰医学杂志》: nejm

  •  
  •  
p4<-p2 + scale_fill_nejm() p4

 

 

 

 

《柳叶刀》:lancet

  •  
  •  
p5<- p1+ scale_color_lancet()p5

 

 

 

《科学》:aaas

  •  
  •  
p6<- p2+ scale_fill_aaas() p6

 

 

 

 

《美国医学会杂志》:jama

  •  
  •  
p7<-p1+ scale_color_jama()p7

 

 

 

 

gridExtra包

  •  
  •  
library("gridExtra")  # 布局、组图用的包grid.arrange(p1,p2,p3,p4,p5,p6, ncol = 2) #ncol = 2  我想2列拼图

 

 

 

cowplot包

  •  
  •  
  •  
  •  
library(cowplot)plot_grid(p1,p2,p3,p4,p5,p6,           labels = LETTERS[1:6],  #大写字母取6个 当做图标          ncol = 2)

 

 

 

如果是对于非ggplot2系统的图形想使用配色

ggsci还提供把调色板的颜色单独提取成颜色代码

 

举个例子

 

lancet调色板中提取6个颜色,

alpha透明度

(6)取6个颜色

  •  
  •  
a<- pal_lancet("lanonc",alpha = 0.6)(6)  a

 

 

npg调色板中提取8个颜色

  •  
  •  
b<-pal_npg('nrc',alpha = 0.8)(8)b

 

 

看自然杂志

  •  
?pal_npg

 

palette 调色板的意思

 

 

看柳叶刀

  •  
?pal_lancet

 

每个期刊对应的调色板palette 叫法不一样

 

当然,这个颜色代码 ,我们也是可以直观看见的

具体的颜色可以用 scales包展示

  •  
  •  
library("scales")show_col(a)

 

 

当然,支持的期刊,或者其他软件、网站的配色还有很多,感兴趣的学员可以自行去探索,我们也会时常发表一些文章供大家参考学习。



(责任编辑:伏泽   微信:18520221056)

森莘老师微信二维码