我在对热图应用其他树状图时遇到麻烦。但这在我的可复制示例中有效,这很奇怪!有什么建议要改变吗?
我正在尝试将系统发育树状图与表型热图融合。我已经尝试了以下示例,并且可以正常工作。
require(ComplexHeatmap)
require(dendextend)
#1 two matrix, b for the heatmap and b1 for the dendrogram:
a=rnorm(10,1)
a1=rnorm(10,1)
b=as.matrix(a)
b1=as.matrix(a1)
dim(b)=c(5,2)
dim(b1)=c(5,2)
#2 give them the same names
name=c(1:5)
name
rownames(b) <- paste(name)
rownames(b1) <- paste(name)
#3 make the dendrogram from b1
d1=dist(b1,method="euclidean")
d1=as.dist(d1)
h1=hclust(d1,method="ward.D")
dend1=as.dendrogram(h1)
plot(dend1)
#4 the heatmap
Heatmap(b,
cluster_columns=FALSE,
cluster_rows = dend1,
row_names_side = "left",
row_dend_reorder=F,
show_row_names=T)
如果我们现在将cluster_rows
更改为T
或不使用cluster_rows
,则总是按预期将正确的名称赋予正确的值。
在我的情况下,名称/标签与热图不同,但与树状图不同。不幸的是,我无法重现此问题,但还是希望能有一些投入。我使用的是完全相同的代码,只是b
和dend1
不同。
我的dend1
是class "dendrogram"
和List of 2