2014-09-03 71 views
5

我想能够使用两个RowSideColor酒吧与R包图的heatmap.2功能,但我不知道如何做到这一点。我在堆栈溢出之前看到过这个问题,在回答问题的同时,答复没有解决这个问题。将因素添加到输入数据矩阵中将不起作用,因为它会影响层次聚类的结果。如果有必要,我愿意使用其他类似heatmap的函数来实现我的目标。多行RowSideColor列heatmap.2从gplots包

感谢, 布拉德

回答

7

我想之前做到这一点,总是习惯做两个热图和复制,并从一个热图一个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参数可以接受的颜色矩阵绘制多行一侧的颜色。