3

我正在尝试在 R 中创建 2 个具有可变值的热图。我希望​​对颜色和值进行缩放,以便两个热图的值具有可比性。现在我正在使用 gplot 包中的 heatmap.2。

MyHeatMap <- heatmap.2(MyData, trace="none", col=greenred)

我的数据来自一个数字矩阵。我有两个矩阵,其中值的数值范围略有不同,我想为两者创建高质量的热图(不一定要使用示例包)。

4

1 回答 1

6

我在自己的分析中多次遇到这个问题,这里是我建议的处理方法。

首先,使用 greenred(256) 将 greenred 颜色变量设置为 256 种颜色。

然后,创建一个 break 变量,其中包含您希望为两个热图拆分这 256 种颜色的数字范围(长度将比颜色向量的长度大一)。因此,例如,如果您希望价差分别从 -1 到 1 从绿色到红色,您可以这样做

pairs.breaks = seq(from=-1,to=1,length.out=257)

然后,在调用热图时,使用

MyHeatMap1 <- heatmap.2(MyData1, trace="none", col=greenred(256), breaks=pairs.breaks)
MyHeatMap2 <- heatmap.2(MyData2, trace="none", col=greenred(256), breaks=pairs.breaks)

这应该会生成两个具有不同数据集的热图,这些数据集使用相同的色标。

希望这可以帮助!

罗恩

于 2013-05-20T23:32:23.717 回答