d3heatmap is designed to have a familiar feature set and API for anyone who has used heatmap or heatmap.2 to create static heatmaps. You can specify dendrogram, clustering, and scaling options in the same way.
d3heatmap includes the following features:
Shows the row/column/value under the mouse cursor
Click row/column labels to highlight
Drag a rectangle over the image to zoom in
Here’s a very simple example (source: flowingdata):
library(d3heatmap) url <- "http://datasets.flowingdata.com/ppg2008.csv" nba_players <- read.csv(url, row.names = 1) d3heatmap(nba_players, scale = "column")
You can easily customize the colors using the
colors parameter. This can take an RColorBrewer palette name, a vector of colors, or a function that takes (potentially scaled) data points as input and returns colors.
Let’s modify the previous example by using the
"Blues" colorbrewer palette, and dropping the clustering and dendrograms:
d3heatmap(nba_players, scale = "column", dendrogram = "none", color = "Blues")
If you want to use discrete colors instead of continuous, you can use the
col_* functions from the scales package.
d3heatmap(nba_players, scale = "column", dendrogram = "none", color = scales::col_quantile("Blues", NULL, 5))
d3heatmap(nba_players, colors = "Blues", scale = "col", dendrogram = "row", k_row = 3)
For issue reports or feature requests, please see our GitHub repo.
Helpful tips for creating collaborative bilingual data science teams.
With Quarto, you can render plain text and mixed formats into different types of content. We highlight six productivity hacks that may be useful to you.