2016-05-09 23 views
1

我已经创建了一个基本的热图,其中列对应于时间点,每行代表一个人。在我的数据集中,我有一个ID变量,我希望它显示在行注释中,以便我可以清楚地看到热图中的哪些行对应于哪个个体。看看下面的图片。如何使用R中的“ComplexHeatmap”包在行注释中添加ID变量?

enter image description here

我只想个人ID,以显示在左边,树状图和热图之间。

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

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

并运行热图功能,而迫使其集群只在行

Heatmap(mymatrix,cluster_columns = FALSE)

另外,我想喜欢创建一个独立的列,显示在热图的右侧,它代表个人的收入,但不会影响集群。深色代表个人收入丰厚,色彩淡淡,收入薄弱。

谢谢你提供的任何帮助!

+0

检查'heatmap.3'包:https://cran.r-project.org /web/packages/heatmap3/vignettes/vignette.pdf – Jimbou

回答

0

假设您的“ID”编码为id,“收入”编码为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") 
相关问题