R热图稀疏且多样化的矩阵

时间:2012-01-02 19:18:21

标签: r colors heatmap

我正在尝试在R中为数据集生成热图,该数据集具有广泛的值范围。数据集主要包含零,其应为白色。大多数剩余值的范围在1到200之间,密度递减。一些值介于201和16000之间。

我想提前为热图创建彩色分档,例如: 0白色 1-20绿色 21-70黄色 71-200橙色 201-16000红色

有关于此的任何想法吗?

THX!

2 个答案:

答案 0 :(得分:9)

heatmap.2中的函数gplots具有内置中断定义。

library(gplots)
x <-matrix(c(seq(0,90,10),runif(90,0,16000)),10)
my.breaks <-c(0,1,20,70,200,16000)
my.col=c("white","green","yellow","orange","red")
heatmap.2(x, col = my.col, breaks=my.breaks)

答案 1 :(得分:1)

尝试使用cut()函数创建与所需颜色对应的因子,然后将颜色与因子的每个值相关联。