bioinformaticsresearch

R语言ComplexHeatmap包做热图:热图每隔三行分开一小

2022-12-30  本文已影响0人  小明的数据分析笔记本

这个是有读者在B站给我的留言问到的问题

image.png

热图每隔三行分开一小段 怎么实现?我最开始的想法是用ggplot2来做,将数据拆分,每三行数据做一个图,最后采取拼图的方式来实现。

后来想起来R语言里有一个做热图功能非常强大的R包ComplexHeatmap应该能够实现这个目的,所以查了一下这个R包的帮助文档,找到了实现办法。

参考文档链接

https://jokergoo.github.io/ComplexHeatmap-reference/book/index.html

ComplexHeatmap的安装方法,如果没有安装这个R包,运行如下命令

https://bioconductor.org/packages/release/bioc/html/ComplexHeatmap.html

if (!require("BiocManager", quietly = TRUE))
    install.packages("BiocManager")

BiocManager::install("ComplexHeatmap")

示例数据集

image.png

读取数据集

mat<-read.csv("20221230.csv",row.names = 1)
mat

最基本的热图

library(ComplexHeatmap)
Heatmap(mat)
image.png

取消聚类

Heatmap(mat,
        cluster_rows = FALSE,
        cluster_columns = FALSE)
image.png

每隔固定行或者固定列进行拆分

Heatmap(mat,
        cluster_rows = FALSE,
        cluster_columns = FALSE,
        row_split = rep(c("A","B","C"),each=6),
        column_split = rep(c("A","B","C","D"),each=6))

image.png

去掉文字标签

Heatmap(mat,
        cluster_rows = FALSE,
        cluster_columns = FALSE,
        row_split = rep(c("A","B","C"),each=6),
        column_split = rep(c("A","B","C","D"),each=6),
        row_title = NULL,
        column_title = NULL)
image.png

示例数据和代码可以给公众号推文点赞,点击在看,最后留言获取

欢迎大家关注我的公众号

小明的数据分析笔记本

小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记!

上一篇下一篇

猜你喜欢

热点阅读