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



stemangiola/tidyHeatmap documentation built on Jan. 27, 2025, 5:52 p.m.