使用树状图和样本标签绘制热图。

4

使用 made4 库中的 heatmap 函数,我从示例文件中制作了这个热图树形图:

data(khan)
heatplot(khan$train[1:30,], lowcol="blue", highcol="red")

如何在热图边缘添加一个样本标签面板,就像这个图中的那样?在这种情况下,标签是与热图第一列和顶部行相邻的正方形,用于表示每个样本的标签,以便可以看到标签是否与热图/树状图所示的聚类相对应。在这个特定的图中,他们选择使这些标签完全对应于树状图聚类的颜色,但不一定非得这样,我正在寻找的方法是只添加一列通用标签和一行标签到样本,这些标签可能不对应于应用树状图的特定阈值而产生的聚类。 heatmap 函数和 khan 数据来自 made4
require(made4)

请参阅http://www.bioinf.ucd.ie/people/aedin/R/pages/made4/html/heatplot.html

我乐于使用可以绘制相同图形的其他替代方案,即带有两个侧面基于分层聚类的树形图的热图。 heatplot只是一个示例。

当我尝试像@HeatherTurner建议的那样使用heatmap.2时,我得到了以下图像(不确定如何关闭矩阵行/列标签以使其更少):

enter image description here

热图看起来已损坏。 以下是使用小数据集复制此代码的代码:

require(gplots)
data(khan)
heatmap.2(as.matrix(khan$train[1:30,])

生成了这个:

enter image description here

是什么导致这些看起来损坏的热图呢?

更新: 抱歉,我认为这些热图并没有损坏,只是trace列被开启,导致青色线通过热图。 设置trace=none即可解决问题。

另外,heatmap似乎具有RowSideCols,这可能是相同的参数吗?


你可能需要解释一下 heatplot 函数的来源,以及可能还要解释一下 khan 数据的来源。(我似乎都找不到。) - joran
@joran:是“made4”,已经澄清了,谢谢。 - user248237
啊,这就解释了。它不在CRAN上。 - joran
@joran:如果有其他可以画出同样效果的东西,我很乐意使用它,而不是heatplot,只是我找到的最简单的东西。 - user248237
如果你想使用ggplot2,也许这个链接可以帮到你(我从来不知道那些根本的东西是什么意思)。 - baptiste
@baptiste:永远喜欢ggplot! 谢谢。哪些根茎的事情? - user248237
2个回答

2
尝试使用gplots包中的heatmap.2函数,它具有RowSideColorsColSideColors参数以创建侧边栏。
如果这不能满足您的需求,可以使用heatmap.plus包进行进一步定制,例如多种颜色的侧边栏。

我看了一下,heatmap 函数和 gplots 中提到的参数是一样的。但是 heatmap.2 对我来说不起作用,它生成的图像很混乱。 - user248237

0
在R中有一个名为'fheatmap'的新包。 cpan fheatmap 由于我是新手,无法发布图片。但请查看手册中的示例。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接