【R语言】热图绘制-heatmap+gplots配色方案

2022-09-21 17:25:37 浏览数 (1)

前面给大家介绍了如何使用R自带的heatmap函数 R自带的配色方案来绘制热图

☞【R语言】热图绘制-heatmap函数

☞R语言中的颜色(一)-自带的调色板

今天我们接着来聊heatmap这个函数绘制热图,这次我们使用gplots这个R包里面的配色方案

☞R语言中的颜色(二)-gplots包

首先我们还是先读取需要的数据,这里用到的数据跟【R语言】热图绘制-heatmap函数用到的数据是一样的

代码语言:javascript复制
#读取所有miRNA的表达矩阵
expr=read.table("miRNA_expr.txt",header=T,row.names=1,sep="t")
#读取差异表达分析结果
#差异表达分析可以参考https://ke.qq.com/course/package/37513
deg=read.table("MIR_DEG_fc_2.5_pval_0.01.txt",header=T,row.names = 1,sep="t")
#设置样本类型
type=factor(rep(c("CR","CC"),each=3))
#提取差异表达miRNA的名字
miRNA=rownames(deg)
#提取差异表达miRNA对应的表达矩阵
data=as.matrix(expr[miRNA,])

接下来我们需要安装gplots这个R包,因为需要用到里面的配色方案

代码语言:javascript复制
#如果没有安装gplots这个包,需要先去掉下一行中的#,再运行进行安装
#install.packages("gplots")

#加载gplots包
library(gplots)

最后我们就可以来利用heatmap和gplots里面的配色方案来绘制火山图了

1.采用gplots包中的redblue配色方案,蓝色高表达,红色低表达

代码语言:javascript复制
heatmap(data, cexCol = 1,scale="row",col = redblue(100))

2.采用gplots包中的bluered配色方案,红色高表达,蓝色低表达

代码语言:javascript复制
heatmap(data, cexCol = 1,scale="row",col = bluered(100))

3.采用gplots包中的redgreen配色方案,绿色高表达,红低表达

代码语言:javascript复制
heatmap(data, cexCol = 1,scale="row",col = redgreen(100))

4.采用gplots包中的greenred配色方案,红色高表达,绿低表达

代码语言:javascript复制
heatmap(data, cexCol = 1,scale="row",col = greenred(100))

5.采用gplots包中的colorpanel配色方案,由绿到红的渐变,绿低表达,红色高表达

代码语言:javascript复制
heatmap(data, cexCol = 1,scale="row",col = colorpanel(100,low="green",high="red"))

6.采用gplots包中的colorpanel配色方案,由绿到黄再到红的渐变,绿低表达,红色高表达,黄色为中间值

代码语言:javascript复制
heatmap(data, cexCol = 1,scale="row",col = colorpanel(100,low="green",mid = "yellow", high="red"))

本文中使用的表达矩阵来自GEO公共数据库

https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE82236

关于GEO数据库检索和差异表达分析可以参考

基于GEO公共数据库的数据挖掘

课程网址:

https://ke.qq.com/course/package/37513

参考资料:

☞【R语言】热图绘制-heatmap函数

☞R语言中的颜色(一)-自带的调色板

☞R语言中的颜色(二)-gplots包

☞ 超详细的热图绘制教程(5000余字),真正的保姆级教程

☞ R语言绘制基因表达热图(简易版)

☞ 一个R函数搞定风险评估散点图,热图

☞ R绘制甲基化和表达谱联合分析热图

0 人点赞