欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > R绘图 | pheatmap 聚类并设置间隔

R绘图 | pheatmap 聚类并设置间隔

2025/2/5 5:19:46 来源:https://blog.csdn.net/wangjunliang/article/details/145423734  浏览:    关键词:R绘图 | pheatmap 聚类并设置间隔

一个pheatmap的小例子,包含设置列注释,列注释颜色,聚类,聚类间隔,保存为pdf等。

  • 加方框失败,可以后续使用Illustrator手工添加

效果图:
在这里插入图片描述

library(pheatmap)
set.seed(2025)
mat <- matrix(rnorm(100), nrow=20)
rownames(mat)=paste0("cell", 1:nrow(mat))
# 相关系数
mat.cor=cor( t(mat), method="spearman")
colnames(mat.cor)=rownames(mat)# 列注释: 区分前10个ctrl组blue,后10个细胞treat组red
annotation_col = data.frame(id=colnames(mat.cor),group=c( rep("ctrl", 10), rep("treat", 10) ), row.names=1
)
# 设置颜色
ann_colors = list(group = c(ctrl = "navy", treat = "deeppink")
)# 热图
library(grid)
#ComplexHeatmap::pheatmap(mat.cor,
p1=pheatmap::pheatmap(mat.cor,#border_color = "white",border_color = NA,# 加方框:失败#add_geom = "rectangles",#rect_gp = gpar(fill = "transparent", col = "red", lwd = 3),#rect_row = c(1, 5), rect_col = c(2, 7),show_rownames = TRUE,#gaps_row = c(1,3,7, 10), #适用于非聚类时cutree_row=5, cutree_cols=5, #适用于聚类时clustering_method = "ward.D2",annotation_col = annotation_col, #annotation_row = annotation_row,annotation_colors = ann_colors,#color = c(colorRampPalette(colors = c("white","yellow"))(20),colorRampPalette(colors = c("yellow","firebrick3"))(20)),show_colnames = TRUE, main="cutree demo")
#保存pdf
pdf(paste0("D://other//demo.heatmap.pdf"), width=6, height=5)
grid::grid.newpage()
grid::grid.draw(p1$gtable)
dev.off()

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com