以不同颜色显示R热图异常值

以不同颜色显示R热图异常值,r,matrix,dataframe,heatmap,R,Matrix,Dataframe,Heatmap,以不同的颜色标记R矩阵中的异常值。 假设我有数据 1 2 4 2 5 5 4 3 2 3 1 500 5 4 2 现在我想用不同的颜色标记500,用热图的默认颜色标记矩阵的其余部分 library(plots) heatmap.2(m, trace = "none", na.color = "Green") 有人能指导我完成这个过程吗?如果你想清楚地看到500,你应该指定不缩放。比如说, m <- matrix(c(1, 5, 1, 2, 4, 500, 4, 3,

以不同的颜色标记R矩阵中的异常值。 假设我有数据

1  2  4  2  5
5  4  3  2  3
1 500 5  4  2
现在我想用不同的颜色标记500,用热图的默认颜色标记矩阵的其余部分

library(plots)
heatmap.2(m, trace = "none", na.color = "Green")

有人能指导我完成这个过程吗?

如果你想清楚地看到500,你应该指定不缩放。比如说,

m <- matrix(c(1, 5, 1, 2, 4, 500, 4, 3, 5, 2, 2, 4, 5, 3, 2), 
  ncol=5)

heatmap((m<500)+0, scale="none", Rowv=NA, Colv=NA)

m这里有一个不错的解决方法来实现这一点。使用
gplots
中的
heatmap.2()。因此,如果您使用一个简单的函数在源矩阵中用NAs替换异常值,那么您就可以用您喜欢的任何颜色来表示它们

首先,选择离群值条件。例如,假设任何大于10的值都是异常值

> m
#      [,1] [,2] [,3] [,4] [,5]
# [1,]    1    2    4    2    5
# [2,]    5    4    3    2    3
# [3,]    1  500    5    4    2

m[m > 10] <- NA


离群值现在很明显。

这个问题相当广泛。没有代码也没有数据。请添加此项,以便我们可以看到您使用的绘图系统,例如。df是我的数据集。因此,当我使用下面的函数时,它会被绘制。但是1、2、3等之间的颜色渐变差异无法区分。所以,我希望这500来在一些不同的颜色…可能是绿色和其他颜色的矩阵阴影的其他部分。热图(as.matrix(sappy(df,as.numeric)),scale=“column”,col=heat.colors(256),main=“Blah Blah”,Rowv=NA,Colv=NA)请编辑您的问题,而不是在注释中添加代码。谢谢您的帮助。但我想要的是500应该是不同的渐变(可能是绿色),其余的数字应该是其他颜色(可能是橙色)。我还想把标签带来。你能帮忙吗