0

底部有高表达值的热图

我对 Rstudio 很陌生,我正在尝试使用 r 中的 heatmaply 函数制作热图,但在某些热图(具有不同数据)中,高表达式值(红色)显示在顶部,而另一个数据集则高表达式值显示在底部,顶部的表达式值较低,如图所示。

我对不同的数据集使用相同的代码

heatmaply(Heatmap_DEXFORM, dendrogram = "row", scale_fill_gradient_fun = scale_fill_gradient2(low="blue",high="red", midpoint=0,limits=c(-4,6))

这是我的数据形成方式的结果吗?是否有一个命令可以让热图翻转,以便高表达式值显示在顶部,就像在我的其他热图中一样?

提前致谢!

4

1 回答 1

1

热图通常基于层次聚类而不是值的大小进行排序。要根据幅度(顶部高,反之亦然)排序,您需要提供树状图(如 Tal 建议的那样)或手动重新排序数据(例如,基于行总和或行均值(或列总和/方法))。

请参阅下面的玩具示例。

mat <- scale(mtcars)
heatmaply(mat, dend = "none")
heatmaply(mat[order(rowSums(mat)), ], dend = "none")
于 2019-07-12T18:41:54.980 回答