README.md

The tidyHeatmap package

Stefano Mangiola 2025-01-26

Lifecycle:maturing DOI

tidyHeatmap is a package that introduces tidy principles to the creation of information-rich heatmaps. This package uses ComplexHeatmap as graphical engine.

Citation

Mangiola et al., (2020). tidyHeatmap: an R package for modular heatmap production based on tidy principles. Journal of Open Source Software, 5(52), 2472, https://doi.org/10.21105/joss.02472

Please have a look also to

Full documentation here

# Create some more data points
pasilla_plus <- 
    tidyHeatmap::pasilla |>
    dplyr::mutate(activation_2 = activation, activation_3 = activation) |> 
    tidyr::nest(data = -sample) |>
    dplyr::mutate(size = rnorm(n(), 4,0.5)) |>
    dplyr::mutate(age = runif(n(), 50, 200)) |>
    tidyr::unnest(data) 

# Plot
pasilla_plus |>
    heatmap(
        .column = sample,
        .row = symbol,
        .value = `count normalised adjusted`,   
        scale = "row"
    ) |>
    annotation_tile(condition) |>
    annotation_point(activation) |>
    annotation_numeric(activation_3) |>
    annotation_tile(activation_2) |>
    annotation_bar(size) |>
    annotation_line(age)

Advantages:

Functions/utilities available

| Function | Description | |----------------------|-----------------------------------------------------------------------------| | heatmap | Plots base heatmap | | group_by | dplyr function - groups heatpmap rows/columns | | annotation_tile | Adds tile annotation to the heatmap | | annotation_point | Adds point annotation to the heatmap | | annotation_bar | Adds bar annotation to the heatmap | | annotation_numeric | Adds bar + number annotation to the heatmap | | annotation_line | Adds line annotation to the heatmap | | layer_text | Add layer of text on top of the heatmap | | layer_point | Adds layer of symbols on top of the heatmap | | layer_square | Adds layer of symbols on top of the heatmap | | layer_diamond | Adds layer of symbols on top of the heatmap | | layer_arrow_up | Adds layer of symbols on top of the heatmap | | layer_arrow_down | Add layer of symbols on top of the heatmap | | layer_star | Add layer of symbols on top of the heatmap | | layer_asterisk | Add layer of symbols on top of the heatmap | | split_rows | Splits the rows based on the dendogram | | split_columns | Splits the columns based on the dendogram | | save_pdf | Saves the PDF of the heatmap | | + | Integrate heatmaps side-by-side | | as_ComplexHeatmap | Convert the tidyHeatmap output to ComplexHeatmap for non-standard “drawing” | | wrap_heatmap | Allows the integration with the patchwork package |

Installation

To install the most up-to-date version

devtools::install_github("stemangiola/tidyHeatmap")

To install the most stable version (however please keep in mind that this package is under a maturing lifecycle stage)

install.packages("tidyHeatmap")

Contribution

If you want to contribute to the software, report issues or problems with the software or seek support please open an issue here



Try the tidyHeatmap package in your browser

Any scripts or data that you put into this service are public.

tidyHeatmap documentation built on April 13, 2025, 9:09 a.m.