bulk RNA-seq R语言画无聚类版斯皮尔曼相关系数热图的代码
时间: 2023-07-24 19:19:03 浏览: 169
s41576-018-0088-9.pdf
以下是用 R 语言画无聚类版 bulk RNA-seq 斯皮尔曼相关系数热图的代码:
```R
# 读入数据
data <- read.table("bulk_RNA_seq_data.txt", header=TRUE, row.names=1)
# 计算斯皮尔曼相关系数
correlation <- cor(data, method="spearman")
# 画热图
library(ggplot2)
library(reshape2)
library(RColorBrewer)
cor_df <- melt(correlation)
ggplot(data=cor_df, aes(x=Var1, y=Var2, fill=value)) +
geom_raster() +
scale_fill_gradientn(colors = rev(brewer.pal(11,'RdYlBu')))+
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1, size=10),
axis.text.y = element_text(size=10))+
ggtitle("Spearman correlation heatmap")
```
其中,`bulk_RNA_seq_data.txt` 是你的数据文件名,文件应该以制表符(Tab)为分隔符,第一行应该是列名,第一列应该是行名。`correlation` 是一个相关系数矩阵,其中每个元素是两个基因之间的斯皮尔曼相关系数。
这段代码使用了 `ggplot2` 和 `reshape2` 包,需要先安装这两个包。`melt` 函数将相关系数矩阵转换为长格式,方便后面使用 `ggplot2` 画图。`geom_raster` 函数绘制热图的方格,`scale_fill_gradientn` 函数控制热图的颜色。这里使用了 `RColorBrewer` 包中的颜色调色板。
运行这段代码后,会生成一个无聚类版的斯皮尔曼相关系数热图,每个方格的颜色表示两个基因之间的相关性。
阅读全文