2

我正在使用heatmap.2函数(R gplots 包)生成聚类热图。我想使用add.expr参数在可变位置的图像上添加一条垂直线。

例如,

xx=replicate(10, rnorm(10)) # some random matrix
heatmap.2(xx, trace="none",
          add.expr=abline(v=c(3.5,6.5), lwd=3))

这很好用。问题是如果我将行位置作为变量传递它不起作用:

linePosition = c(3.5,6.5)
heatmap.2(...,
          add.expr=abline(v=linePosition, lwd=3))

看起来abline函数是从 heatmap.2 函数内部调用的,并且看不到外部变量。

请建议什么是最好的方法。

当然,除了我自己的功能,我不想修改任何功能。

4

1 回答 1

3

这似乎添加了两条粗线:

heatmap.2(xx,
       add.expr=eval( abline(v=linePosition, lwd=3))) 
于 2013-08-28T22:10:22.803 回答