我使用heatmap.2
在R中制作了热图,我唯一能弄清楚的是如何控制颜色键上刻度线的存在和标记。我有一个例子如下。我想要做的是在颜色键的开头和结尾有刻度标记以指示值的范围(在这种情况下为0-1),而不是标记为0,0.4和0.8的6个刻度线。我确信有一种简单的方法来控制它,但我似乎无法找到它。
library('gplots')
data <- c(0, 0.1, 0.1, 0.2, 0.2, 0.7, 0.7, 0.8, 1)
matr <- matrix(data, 3, 3)
heatmap.2(matr, trace="none", density.info="none")
编辑:
我能找到的唯一解决办法是直接更改heatmap.2
本身以接受其他参数,因为这似乎是硬编码的(在我的情况下,我想为颜色键添加最小和最大范围)。
原始热图.2
heatmap.2 <-function (...)
{
...
lv <- pretty(breaks) # line 362
...
}
更改为:
heatmap.2 <-function (..., xMin = NULL, xMax = NULL, ...)
{
...
if(is.null(xMin)) lv <- pretty(breaks)
else lv <- c(xMin, xMax)
...
}
答案 0 :(得分:3)
&#34; key.xtickfun&#34;争论就是你想要的。将函数传递给此参数,该参数返回一个命名列表,其元素将传递给&#34;轴&#34;功能
在这个功能中,我得到了#34;休息&#34;从父框架(gplots环境),使它们漂亮,并只保留第一个和最后一个中断,即最小和最大。然后,返回一个列表&#34; at&#34;和&#34;标签&#34;。 &#34;在&#34;是在break上调用的scale01函数(也来自父框架)返回的值。 &#34;标签&#34;是标签,应该是休息本身。
predict()