2012-03-15 132 views

回答

1

您可以檢查所有值是否相同,如果是這種情況,則跳過熱圖圖。

m <- matrix(...) 
if(!all(m[1,1] == m){ 
    plot... 
} 
0

定義您自己的直方圖中斷。

x <- matrix(0, nrow = 5, ncol = 5) 
datarange <- range(c(x)) + c(-0.1, 0.1) 
mybreaks <- seq(datarange[1], datarange[2], length = 10) 
heatmap.2(x, breaks = mybreaks, 
      key.xtickfun=function() { 
        breaks <- parent.frame()$breaks 
        return(list(
           at=parent.frame()$scale01(c(breaks[1], 
            breaks[length(breaks)])), 
           labels=c(as.character(breaks[1]), 
            as.character(breaks[length(breaks)])) 
           )) 
        }) 

或者刪除色鍵:

heatmap.2(x, key = FALSE)