R: Which heatmap/image to get row-sorted plot without any dendrogram?

heatmap, image, r

Solution

With `pheatmap` you can use options `treeheight_row` and `treeheight_col` and set these to 0.

Problem

Which package is best for a heatmap/image with sorting on rows only, but don't show any dendrogram or other visual clutter (just a 2D colored grid with automatic named labels on both axes). I don't need fancy clustering beyond basic numeric sorting. The data is a 39x10 table of numerics in the range (0,0.21) which I want to visualize. I searched SO (see this) and the R sites, and tried a few out. Check out R Graphical Manual to see an excellent searchable list of screenshots and corresponding packages. The range of packages is confusing - which one is the preferred heatmap (like ggplot2 is for most other plotting)? Here is what I found out so far: - base::image - bad, no name labels on axes, no sorting/clustering - base::heatmap - options are far less intelligible than the following: - pheatmap::pheatmap - fantastic but can't seem to turn off the dendrograms? (any hacks?) - ggplot2 people use geom_tile, as Andrie points out - gplots::heatmap.2 , ref - seems to be favored by biotech people, but way overkill for my purposes. (no relation to ggplot* or Prof Wickham) - plotrix::color2D.matplot also exists `base::heatmap` is annoying, even with args `heatmap(..., Colv=NA, keep.dendro=FALSE)` it still plots the unwanted dendrogram on rows. For now I'm going with `pheatmap(..., cluster_cols=FALSE, cluster_rows=FALSE)` and manually presorting my table, like this guy: Order of rows in heatmap? Addendum: to display the value inside each cell, see: display a matrix, including the values, as a heatmap . I didn't need that but it's nice-to-have.

Original source

Related problems