首页 > 解决方案 > 如何缩放热图的单元格高度和宽度?

问题描述

我有一个包含 641*976 数据点的矩阵。当我在 R 中应用 Heatmap 函数时,结果是二次热图。我希望热图与我的输入矩阵(平方单元格)具有相同的比例。

heatmap(as.matrix(Data), scale = "none", col = my_palette, 
breaks = col_breaks, main =  "Heatmap of emission ratios", Rowv = NA, Colv = NA)

我可以用 mtcars 数据集向你展示我的情况。该数据集的维度为 32*11。当您生成 mtcars 数据集的热图时,您会得到一个二次热图。即使输入矩阵是矩形的。

dim(mtcars)
heatmap(as.matrix(mtcars), scale = "none", Rowv = NA, Colv = NA)

我希望热图也是矩形的。这意味着热图的每个单元格都是二次的而不是矩形的。在mtcars数据集的热图中,很明显情况并非如此。

我遇到的另一个问题是热图的方向。当我们检查数据集时,我们看到“Mazda RX4”行和列的单元格位于mpg左上角。

View(mtcars)

但在热图中,左上角的单元格包含“Volvo 142E”行和“mpg”列的信息。如何调整热图以使方向与输入矩阵中的方向完全相同。左上角的含义单元格包含“Mazda RX4”行和列的信息mpg

标签: rmatrixheatmap

解决方案


同时,我找到了解决问题的方法。我切换到 heatmap.2 功能。这使我可以使用边距命令设计 Heatmat 的长度和宽度。


推荐阅读