多个RowSideColor列来自gplots包的heatmap.2

时间:2014-09-03 16:30:24

标签: r gplots

我希望能够使用两个RowSideColor条和R包图中的heatmap.2函数,但我无法弄清楚如何做到这一点。我已经在堆栈溢出之前看到过这个问题,并且在回答问题的同时,回复没有解决这个问题。将因子添加到输入数据矩阵将不起作用,因为它会影响层次聚类的结果。如果有必要,我愿意使用其他类似热图的功能来实现我的目标。

谢谢, 布拉德

1 个答案:

答案 0 :(得分:10)

我以前想要这样做,并且总是习惯制作两张热图,并将一张RowSideColors条从一张热图复制粘贴到另一张热图上。我只是做了一些搜索,发现可以执行此操作的heatmap.plus包:

# install.packages("heatmap.plus") #install package
require("heatmap.plus")

data(cars) # using cars data as example

# create a matrix of colors for RowSideColors
myCols = cbind(rep(c("yellow", "blue"), 25), rep(c("red", "green"), 25))

heatmap.plus(data.matrix(cars), RowSideColors=myCols)

此包中的RowSideColors参数可以接受颜色矩阵以绘制多行颜色。