heatmaply

Interactive Heat Maps for R Using plotly

https://github.com/talgalili/heatmaply

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 7 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.0%) to scientific vocabulary

Keywords

cran d3-heatmap dendextend dendrogram ggplot2 heatmap plotly r
Last synced: 6 months ago · JSON representation

Repository

Interactive Heat Maps for R Using plotly

Basic Info
  • Host: GitHub
  • Owner: talgalili
  • Language: R
  • Default Branch: master
  • Homepage:
  • Size: 6.68 MB
Statistics
  • Stars: 391
  • Watchers: 24
  • Forks: 74
  • Open Issues: 35
  • Releases: 1
Topics
cran d3-heatmap dendextend dendrogram ggplot2 heatmap plotly r
Created almost 10 years ago · Last pushed 7 months ago
Metadata Files
Readme Changelog

README.md

R-CMD-check codecov CRAN_Status_Badge

heatmaply

Table of contents:

Screenshot demo

Introduction

A heatmap is a popular graphical method for visualizing high-dimensional data, in which a table of numbers are encoded as a grid of colored cells. The rows and columns of the matrix are ordered to highlight patterns and are often accompanied by dendrograms. Heatmaps are used in many fields for visualizing observations, correlations, missing values patterns, and more.

Interactive heatmaps allow the inspection of specific value by hovering the mouse over a cell, as well as zooming into a region of the heatmap by dragging a rectangle around the relevant area.

This work is based on the ggplot2 and plotly.js engine. It produces similar heatmaps as d3heatmap (or the static heatmap.2 from gplots), with the advantage of more features such as speed (plotly.js is able to handle larger size matrix), sidebar annotation, and the ability to zoom from the dendrogram.

Please submit features requests

This package is still under active development. If you have features you would like to have added, please submit your suggestions (and bug-reports) at: https://github.com/talgalili/heatmaply/issues

Latest news

You can see the most recent changes to the package in the NEWS.md file

Code of conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

Installation

To install the stable version on CRAN:

r install.packages('heatmaply')

To install the latest ("cutting-edge") GitHub version run:

```R

good packages to install for this to work smoothly:

install.packages(c("Rcpp","ggplot2","munsell","htmltools","DBI","assertthat", "gridExtra","digest","fpc","TSP","registry","gclus","gplots","RColorBrewer", "stringr","labeling","yaml"))

You'll need devtools

install.packages.2 <- function (pkg) if (!require(pkg)) install.packages(pkg); install.packages.2('devtools')

make sure you have Rtools installed first! if not, then run:

install.packages('installr'); install.Rtools()

devtools::installgithub("ropensci/plotly") # you will probably benefit from the latest version of plotly devtools::installgithub('talgalili/heatmaply') ```

And then you may load the package using:

R library("heatmaply")

Usage

Quick example:

r library(heatmaply) heatmaply(mtcars, k_row = 3, k_col = 2)

For more (interactive) examples see the online vignette on CRAN

There are also more complex biological examples of using heatmaply in the R package heatmaplyExamples (hosted on github). Here are direct links for available examples:

Saving your heatmaply into a file

You can save an interactive version of your heatmaply into an HTML file using the following code:

r dir.create("folder") library(heatmaply) heatmaply(mtcars, file = "folder/heatmaply_plot.html") browseURL("folder/heatmaply_plot.html")

Similar code can be used for saving a static file (png/jpeg/pdf)

```r dir.create("folder") library(heatmaply)

Before the first time using this code you may need to first run:

webshot::install_phantomjs()

heatmaply(mtcars, file = "folder/heatmaplyplot.png") browseURL("folder/heatmaplyplot.png") ```

Replacing d3heatmap with heatmaply

The package d3heatmap (https://github.com/talgalili/d3heatmap) is no not actively maintained.

If users are interested in replacing their d3heatmap functions, this is easily done with heatmaply:

  • Function calls d3heatmap::d3heatmap() can be replaced with heatmaply::heatmaply()
  • Users of d3heatmap for shiny applications can use the following functions:
    • d3heatmap::d3heatmapOutput() can be replaced with plotly::plotlyOutput()
    • d3heatmap::renderD3heatmap() can be replaced with plotly::renderPlotly()

Acknowledgements

This package is thanks to the amazing work done by MANY people in the open source community. Beyond the many people working on the pipeline of R, thanks should go to the people working on ggplot2 (Hadley Wickham, etc.) and plotly (Carson Sievert, etc.). Also, many of the design elements were inspired by the work done on heatmap, heatmap.2 and d3heatmap, so special thanks goes to the R core team, Gregory R. Warnes, and Joe Cheng from RStudio. The dendrogram side of the package is based on the work in dendextend, in which special thanks should go to Andrie de Vries for his original work on bringing dendrograms to ggplot2 (which evolved into the richer ggdend objects, as implemented in dendextend).

The work on heatmaply was done by Tal Galili, Alan O'Callaghan, and Jonathan Sidi (mostly on shinyHeatmaply).

Funding: This work was supported in part by the European Union Seventh Framework Programme (FP7/2007-2013) under grant agreement no. 604102 (Human Brain Project).

How to cite the heatmaply package

The methods within the package can be cited as:

Tal Galili, Alan O'Callaghan, Jonathan Sidi, Carson Sievert; heatmaply: an R package for creating
interactive cluster heatmaps for online publishing, Bioinformatics, , btx657,
https://doi.org/10.1093/bioinformatics/btx657

A BibTeX entry for LaTeX users is

@Article{,
  author = {{Galili} and {Tal} and {O'Callaghan} and {Alan} and {Sidi} and {Jonathan} and {Sievert} and {Carson}},
  title = {heatmaply: an R package for creating interactive cluster heatmaps for online publishing},
  journal = {Bioinformatics},
  year = {2017},
  doi = {10.1093/bioinformatics/btx657},
  url = {https://dx.doi.org/10.1093/bioinformatics/btx657},
  eprint = {https://academic.oup.com/bioinformatics/article-pdf/doi/10.1093/bioinformatics/btx657/21358327/btx657.pdf},
}

This free open-source software implements academic research by the authors and co-workers. If you use it, please support the project by citing the appropriate journal articles.

Contact

You are welcome to:

Owner

  • Name: Tal Galili
  • Login: talgalili
  • Kind: user
  • Location: Tel aviv, Israel
  • Company: Tel Aviv University

GitHub Events

Total
  • Create event: 2
  • Release event: 1
  • Issues event: 2
  • Watch event: 15
  • Issue comment event: 7
  • Push event: 12
  • Fork event: 2
Last Year
  • Create event: 2
  • Release event: 1
  • Issues event: 2
  • Watch event: 15
  • Issue comment event: 7
  • Push event: 12
  • Fork event: 2

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 560
  • Total Committers: 13
  • Avg Commits per committer: 43.077
  • Development Distribution Score (DDS): 0.355
Past Year
  • Commits: 1
  • Committers: 1
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Tal Galili t****i@g****m 361
Alan O'Callaghan a****n@o****m 174
Alan O'Callaghan a****n@f****m 14
Jaehyun Joo j****o@o****m 2
mcsimenc m****c 1
evanbiederstedt e****t@g****m 1
cole-johanson c****n@g****m 1
Siddhartha Bagaria s****d@g****m 1
Matt w****e 1
Marcel Schilling m****g@m****e 1
Manor Askenazi m****r@b****g 1
Huzefa Khalil h****l@g****m 1
Dan d****y 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 111
  • Total pull requests: 18
  • Average time to close issues: 10 months
  • Average time to close pull requests: 2 months
  • Total issue authors: 89
  • Total pull request authors: 11
  • Average comments per issue: 4.5
  • Average comments per pull request: 4.17
  • Merged pull requests: 12
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 2
  • Pull requests: 0
  • Average time to close issues: 4 days
  • Average time to close pull requests: N/A
  • Issue authors: 2
  • Pull request authors: 0
  • Average comments per issue: 4.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • talgalili (8)
  • mcsimenc (5)
  • alanocallaghan (5)
  • gtollefson (3)
  • Alanocallaghan (3)
  • kleurless (2)
  • huzefaKhalil (2)
  • aminards (2)
  • askhari139 (1)
  • carmensandoval (1)
  • jeremycfd (1)
  • firmai (1)
  • joannawolthuis (1)
  • khughitt (1)
  • Tazovsky (1)
Pull Request Authors
  • Alanocallaghan (8)
  • siddharthab (2)
  • mcsimenc (2)
  • manor (1)
  • cole-johanson (1)
  • alanocallaghan (1)
  • bczech (1)
  • huzefaKhalil (1)
  • evanbiederstedt (1)
  • jaehyunjoo (1)
  • ghost (1)
Top Labels
Issue Labels
bug (35) enhancement (28)
Pull Request Labels

Packages

  • Total packages: 2
  • Total downloads:
    • cran 11,055 last-month
  • Total docker downloads: 138,947
  • Total dependent packages: 15
    (may contain duplicates)
  • Total dependent repositories: 78
    (may contain duplicates)
  • Total versions: 36
  • Total maintainers: 1
cran.r-project.org: heatmaply

Interactive Cluster Heat Maps Using 'plotly' and 'ggplot2'

  • Versions: 25
  • Dependent Packages: 13
  • Dependent Repositories: 77
  • Downloads: 11,055 Last month
  • Docker Downloads: 138,947
Rankings
Forks count: 0.9%
Stargazers count: 1.1%
Dependent repos count: 2.7%
Average: 2.8%
Docker downloads count: 3.3%
Downloads: 4.1%
Dependent packages count: 4.5%
Maintainers (1)
Last synced: 6 months ago
conda-forge.org: r-heatmaply
  • Versions: 11
  • Dependent Packages: 2
  • Dependent Repositories: 1
Rankings
Dependent packages count: 19.6%
Stargazers count: 21.2%
Forks count: 21.5%
Average: 21.6%
Dependent repos count: 24.1%
Last synced: 6 months ago

Dependencies

DESCRIPTION cran
  • R >= 3.0.0 depends
  • plotly >= 4.7.1 depends
  • viridis * depends
  • RColorBrewer * imports
  • assertthat * imports
  • colorspace * imports
  • dendextend >= 1.12.0 imports
  • egg * imports
  • ggplot2 >= 2.2.0 imports
  • grDevices * imports
  • htmlwidgets * imports
  • magrittr >= 1.0.1 imports
  • methods * imports
  • reshape2 * imports
  • scales * imports
  • seriation * imports
  • stats * imports
  • utils * imports
  • webshot * imports
  • covr * suggests
  • gplots * suggests
  • knitr * suggests
  • rmarkdown * suggests
  • testthat * suggests
  • tidyselect * suggests
.github/workflows/R-CMD-check.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/check-r-package v2 composite
  • r-lib/actions/setup-pandoc v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/check-release.yaml actions
  • actions/checkout v2 composite
  • actions/upload-artifact main composite
  • r-lib/actions/check-r-package v1 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/check-standard.yaml actions
  • actions/checkout v2 composite
  • actions/upload-artifact main composite
  • r-lib/actions/check-r-package v1 composite
  • r-lib/actions/setup-pandoc v1 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/lint.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/pkgdown.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/setup-pandoc v1 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/pr-commands.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/pr-fetch v2 composite
  • r-lib/actions/pr-push v2 composite
  • r-lib/actions/setup-r v2 composite
  • r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/test-coverage.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite