在R中使用自己的颜色为一些值绘制热力图

4

以下是数据:

set.seed(123)
mat <- matrix(rnorm(5000, 0.5, 0.2), 50)
heatmap (mat)

enter image description here

mat[mat > 0.05] <- NA
heatmap (mat)

Error in hclustfun(distfun(x)) : 
  NA/NaN/Inf in foreign function call (arg 11)

通过替换其他值(任意值可以帮助)但会欺骗读者,因为它将从相同的比例尺中选择颜色,这是不正确的。因此,我想为那些大于0.05的值放置完全不同的颜色。

mat[mat > 0.05] <- 0.1
heatmap (mat)

enter image description here

1个回答

4

也许...

library(gplots)
set.seed(123)
mat <- matrix(rnorm(5000, 0.5, 0.2), 50)
heatmap.2(mat, breaks=c(-1,0.02,0.05,1), col=c("yellow", "red", "blue"), 
# aiming for >0.05 is blue
dendrogram="both", trace="none")

基本上玩弄 col=breaks=

看起来像这样:

enter image description here


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