首页 文章

如何在R中使用“ComplexHeatmap”包在行注释中添加ID变量?

提问于
浏览
1

我创建了一个基本的热图,其中列对应于时间点,每行代表一个人 . 在我的数据集中,我有一个ID变量,我希望它显示在行注释中,以便我可以清楚地看到热图中哪些行与哪个行相对应 . 看看下面的图片 .

enter image description here

我只想在树形图和热图之间的左边显示个别ID .

到目前为止,我已经使用我的CSV文件创建了一个矩阵

mymatrix<-as.matrix(mydata[ ,c(2:9)]

并运行热图功能,同时强制它仅在行上集群

Heatmap(mymatrix,cluster_columns = FALSE)

此外,我想创建一个单独的列,显示在热图的右侧,代表个人的收入但不影响群集 . 深色代表收入丰厚,色彩浅的个人,收入微薄 .

感谢您提供的任何帮助!

1 回答

  • 1

    假设您的"id"编码为 id ,"revenue"编码为 revenue . 两者都是载体 . 您可以按如下方式制作热图:

    revenue_col = c("large" = "black", "weak" = "grey")
    library(ComplexHeatmap)
    ht_list = rowAnnotation(id = row_anno_text(id, just = "right"), 
            width = max_text_width(id)) + 
        Heatmap(mymatrix, name = "mymatrix", cluster_columns = FALSE) + 
        Heatmap(revenue, col = revenue_col, width = unit(5, "mm")
    ht_list
    

    将树状图放在最左边:

    draw(ht_list, row_dend_side = "left")
    

相关问题