我正在尝试在R中创建具有可变值的2个热图.我希望缩放颜色和值,以便两个热图的值可比较.现在我正在使用gplot包中的heatmap.2.
MyHeatMap <- heatmap.2(MyData, trace="none", col=greenred)
Run Code Online (Sandbox Code Playgroud)
我的数据来自数字矩阵.我有两个这样的矩阵,其中值的数值范围略有不同,我想为两者创建高质量的热图(不一定要使用样本包).
小智 6
我在自己的分析中已经多次遇到过这个问题,这就是我建议如何处理它.
首先,将您的绿色变量设置为256绿色(256).
然后,创建一个中断变量,其中包含您要为这两个热图分割这256种颜色的数字范围(长度将比颜色矢量的长度多一个).因此,例如,如果您希望传播分别从-1到1从绿色变为红色,那么您可以这样做
pairs.breaks = seq(from=-1,to=1,length.out=257)
Run Code Online (Sandbox Code Playgroud)
然后,在调用热图时,请使用
MyHeatMap1 <- heatmap.2(MyData1, trace="none", col=greenred(256), breaks=pairs.breaks)
MyHeatMap2 <- heatmap.2(MyData2, trace="none", col=greenred(256), breaks=pairs.breaks)
Run Code Online (Sandbox Code Playgroud)
这应该产生两个具有不同数据集的热图,这些数据集使用相同的色标.
希望这可以帮助!
罗恩