Hi, I am trying to create a heatmap with some specific requirements. Specifically, I need to be able to center the color-scale around 0, and I need to truncate the data so that a few extreme values do not cause the rest of the heatmap to appear black (on a red/green scale).
After reading through and experimenting with heatmap, heatmap.2, heatmap_plus, and heatmap_2, I believe heatmap.2 will provide the best solution - it appears to be the only option that will center around 0 without me manually adjusting the zlim. In addition, the color key and distributional information is useful (at least for the non-truncated data). Although I have not used truncated data at this point, I have so far been unable to produce consistent dendrograms when I'm not producing the dendrogram as part of the heatmap. What am I missing? ################################### R version 2.9.0 (2009-04-17) Copyright (C) 2009 The R Foundation for Statistical Computing ISBN 3-900051-07-0 # The correct results > hv <- heatmap.2(x, col=col.palette, Colv=FALSE, key=TRUE, Rowv=cc1$order, dendrogram="row", scale="none", tracecol="white", cexCol=.5) > hv$rowInd [1] 26 23 5 19 15 4 2 16 21 13 22 12 10 20 7 3 25 1 8 11 24 9 18 14 17 [26] 6 # Attempt 1 > cc = as.dendrogram(hclust(dist(x))) > hv1 <- heatmap.2(x, col=col.palette, Rowv=cc, Colv=FALSE, key=TRUE, dendrogram="row", scale="none", tracecol="white", cexCol=.5) > hv1$rowInd [1] 5 23 26 1 25 8 11 9 24 18 14 6 17 2 4 16 21 13 22 12 10 20 3 7 15 [26] 19 # Attempt 2 > cutting <- cutree(hclust(dist(x)),k=8) # I counted about 8 divisions in correct clustering > hv2 <- heatmap.2(x, col=col.palette, Rowv=cutting, Colv=FALSE, key=TRUE, dendrogram="row", scale="none", tracecol="white", cexCol=.5) > hv2$rowInd [1] 5 23 26 1 25 8 11 9 24 18 14 6 17 15 19 2 4 16 21 13 22 3 7 12 10 [26] 20 # Attempt 3 > correct.order <- hv$rowInd > hv3 <- heatmap.2(x, col=col.palette, Rowv=correct.order, Colv=FALSE, key=TRUE, dendrogram="row", scale="none", tracecol="white", cexCol=.5) > hv3$rowInd [1] 5 26 23 15 19 22 13 7 3 12 20 10 16 21 4 2 8 11 25 1 24 9 18 14 6 [26] 17 My understanding is that my first attempt is the same call heatmap.2 makes - so there is no reason for the different results. Note - if there is another way to create the heatmaps meeting my requirements using other packages, that works too - I just need something to produce consistent results. Thanks! Melissa Key Graduate Student Department of Statistics Purdue University ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.