2014-03-06 62 views
1

我有一個包含大量1S和一些0統計::熱圖顯示白色更高的數據

R) m = matrix(rep(1,25),5,5) 
R) m[c(1,5,7,8,3,5)] = 0 
R) m 
    [,1] [,2] [,3] [,4] [,5] 
[1,] 0 1 1 1 1 
[2,] 1 0 1 1 1 
[3,] 0 0 1 1 1 
[4,] 1 1 1 1 1 
[5,] 0 1 1 1 1 
R) heatMap <- heatmap(m, Rowv=NA, Colv=NA, col = heat.colors(256), scale="none", margins=c(5,5), na.rm=T) 

enter image description here

熱圖熱圖我需要scale='none'爲我有時只有1或0的矩陣(在這種情況下縮放失敗),我怎樣才能使熱圖變得更深的顏色更高的數字?

回答

4

最簡單的方法是隻扭轉火色的矢量:

heatmap(m, Rowv=NA, Colv=NA, col = rev(heat.colors(256)), 
     scale="none", margins=c(5,5), na.rm=T) 

enter image description here

+0

出於某種原因,我雖然這有什麼用{0,1}它只是把白紅色,而不是相反,所以反直覺,我沒有想到它......我應該downvote我自己的問題 – statquant

+0

@statquant另一方面,你的問題確實包括一個非常好的最小可重現的例子,所以要輕鬆對自己;-) –