我试图通过heatmap.2生成一个图,但是想了解集群是如何完成的。所以,我试图在函数调用之前复制树形图,并用这些绘图。但是,最终数字不同。任何线索?
HEATMAP 1:
h<-heatmap.2(dat,col=redgreen, trace="none",
xlab="Samples", ylab="Genes" ,scale="none" )
VS。
HEATMAP 2:
Rowv <- hclust( dist(dat)) #defaults to method="euclidean" and method="complete")
Colv <- hclust(dist(t(dat))) #same as above
heatmap.2(dat, Rowv=as.dendrogram(Rowv), Colv=as.dendrogram(Colv),
col=redgreen, trace="none",
xlab="Samples", ylab="Genes",scale="none" )
这两个会生成不同的热图。有什么线索的原因?
答案 0 :(得分:0)
尝试
Rowv <- as.dendrogram(hclust(dist(X)))
也许as.dendrogram
在这里有所作为。 R仍然是一团糟^ W ^ W对我来说是一个谜。
答案 1 :(得分:0)
我已经很晚了,但我会试试。我不知道heatmap.2
,但是热图默认重新排序树形图。
要获得与未提供预先计算的树形图时得到的结果完全相同的结果,您必须说(对于行树形图):
Rowv <- hclust( dist(dat))
Rowv <- reorder(as.dendrogram(Rowv), rowMeans(dat)) # reorder by the row means of dat <br/>
heatmap(dat, Rowv=Rowv, Colv=Colv=as.dendrogram(Colv),col=redgreen, trace="none",xlab="Samples", ylab="Genes",scale="none" )
# leaving everything else as in your original message