【问题标题】:R heatmap.2 in gplots - can't replicate the plot when dendograms are passed:gplots 中的 R heatmap.2 - 传递树状图时无法复制绘图:
【发布时间】:2013-11-11 02:50:13
【问题描述】:

我正在尝试通过 heatmap.2 生成图,但想了解聚类是如何完成的。所以,我试图在函数调用之前复制树状图,并用这些进行绘图。然而,最终的数字是不同的。有什么线索吗?

热图 1:

h<-heatmap.2(dat,col=redgreen, trace="none",
          xlab="Samples", ylab="Genes" ,scale="none" )

对比

热图 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" )

这两个会生成不同的热图。有什么线索吗?

【问题讨论】:

    标签: r cluster-analysis heatmap


    【解决方案1】:

    试试

    Rowv <- as.dendrogram(hclust(dist(X)))
    

    也许as.dendrogram 在这里有所作为。 R 仍然是一团糟^W^W 对我来说是个谜。

    【讨论】:

      【解决方案2】:

      我来晚了,但我会努力的。我不知道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 
      

      【讨论】:

        猜你喜欢
        • 2014-01-29
        • 1970-01-01
        • 1970-01-01
        • 2013-05-09
        • 1970-01-01
        • 1970-01-01
        • 2014-03-25
        • 2014-09-15
        • 2020-02-07
        相关资源
        最近更新 更多