What is heatmaply?
heatmaply is an R package for easily creating interactive cluster heatmaps that can be shared online as a stand-alone HTML file. Interactivity includes a tooltip display of values when hovering over cells, as well as the ability to zoom in to specific sections of the figure from the data matrix, the side dendrograms, or annotated labels.
The package aims to be compatible with gplots::heatmap.2 so you could take code written for it and just change the heatmap.2 command to be heatmaply, and get the interactive version of the plot (although with slightly different, improved, defaults for colors and dendrogram ordering). Thanks to the synergistic relationship between heatmaply and other R packages, the user is empowered by a refined control over the statistical and visual aspects of the heatmap layout.
What makes heatmaply great?
The change from version 0.16.0 to version 1.0.0 is to indicate the maturity of the package. It is to reflect the following facts:
- The first version of heatmaply (0.1.0) was released on 2016-05-14. Since then, the package has had over 16 version releases (see the NEWS page for changes across versions).
- The package gets around 5,000 monthly downloads, and has been downloaded over 140,000 times as of today.
- We published an academic paper on heatmaply in the bioinformatics journal: heatmaply: an R package for creating interactive cluster heatmaps for online publishing. The paper is open-access under CC-BY license. As of today, the paper has been cited 47 times.
- The package has unit-tests and got 90% code coverage.
- This package relies primarily on the packages plotly and dendextend. Both are very mature packages.
- The package is maintained by two authors, Tal Galili (me), and Alan O’Callaghan (who has been the main reason this package has gotten this far, providing a huge number of improvements and bug fixes!)
What can heatmaply do?
Many things! You can learn about the various options in the online vignette.
For example, running the following code will produce an interactive cluster heatmap of the mtcars dataset (after ranking the columns and normalizing them to range from 0 to 1):
# install.packages("heatmaply") library(heatmaply) mtcars_2 <- percentize(mtcars) heatmaply(mtcars_2, k_row = 4, k_col = 2) # I got the static image using ggheatmap instead of heatmaply
Stay in touch
- The official package homepage is: https://talgalili.github.io/heatmaply/ where you can see the recent NEWS, documentation, and vignette.
- Help us make the package better:
- Ask questions on https://stackoverflow.com/questions/tagged/heatmaply
- submit suggestions and bug-reports at: https://github.com/talgalili/heatmaply/issues
- send a pull request on: https://github.com/talgalili/heatmaply/
- If you use the package in academic publication, please cite our paper.
We hope you’ll enjoy heatmaply 🙂