Skip to main content

EnrichMap: Spatially informed enrichment analysis for functional interpretation of spatial transcriptomics

Project description

EnrichMap: Spatially-aware gene set enrichment

EnrichMap

EnrichMap is a lightweight tool designed to compute and visualise enrichment scores of a given gene set or signature in spatial transcriptomics datasets across different platforms. It offers flexible scoring, batch correction, spatial smoothing and visual outputs for intuitive exploration of biological signatures.

EnrichMap workflow

Features

  • Fast computation of enrichment scores
  • Support for batch correction and spatial covariates
  • Built-in spatial smoothing
  • Visualisation tools for intuitive mapping
  • Easy integration with AnnData (.h5ad) objects

Installation

A conda environment is strongly recommended with python ≥ 3.10.

conda create -n enrichmap_env python=3.11
conda activate enrichmap_env

Then, install enrichmap via pip.

pip install enrichmap

or directly from GitHub:

pip install git+https://github.com/secrierlab/enrichmap.git

Basic usage

import scanpy as sc
import enrichmap as em

# Load your AnnData object
adata = sc.read_h5ad("PATH/TO/YOUR/DATA.h5ad")

# Define a gene set
gene_set = ["CD3D", "CD3E", "CD8A"]

# Run scoring
em.tl.score(
    adata=adata,
    gene_set=gene_set,
    score_key="T_cell_signature",
    smoothing=True, # by default,
    correct_spatial_covariates=True, # by default
    batch_key=None # Set batch_key if working with multiple slides
)

# Visualise
em.pl.spatial_enrichmap(
    adata=adata,
    score_key="T_cell_signature_score"
)

Important note: EnrichMap currently does not support reading in SpatialData format. However, users can simply convert SpatialData to legacy AnnData to use EnrichMap.

import spatialdata_io as sd
# read in SpatialData
sdata = sd.visium_hd("PATH_TO_DATA_FOLDER/")
# convert to AnnData
adata = to_legacy_anndata(sdata, include_images=True, table_name="square_008um", coordinate_system="downscaled_hires")

Documentation

Comprehensive documentation is available at: https://enrichmap.readthedocs.io/en/latest

Contributing

If you have ideas for new features or spot a bug, please open an issue or submit a pull request.

License

This project is licensed under the GNU GENERAL PUBLIC LICENSE.

Citation

Celik C & Secrier M (2025). EnrichMap: Spatially-informed enrichment analysis for functional interpretation of spatial transcriptomics. biorxiv.com

Copyright

This code is free and is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. See the GNU General Public License for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

enrichmap-0.1.33.tar.gz (72.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

enrichmap-0.1.33-py3-none-any.whl (41.5 kB view details)

Uploaded Python 3

File details

Details for the file enrichmap-0.1.33.tar.gz.

File metadata

  • Download URL: enrichmap-0.1.33.tar.gz
  • Upload date:
  • Size: 72.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.8

File hashes

Hashes for enrichmap-0.1.33.tar.gz
Algorithm Hash digest
SHA256 3ddc27f774e340aeb35aae9bb29c378dc6a0c3d6127034f4c6150c6f2262d529
MD5 4e143054d0cc4224ab8925646b4d7e2e
BLAKE2b-256 5cafa1993c9f291a28d0591314e0792f7e90fd8c1b8464da03bed5c28c9aea13

See more details on using hashes here.

File details

Details for the file enrichmap-0.1.33-py3-none-any.whl.

File metadata

  • Download URL: enrichmap-0.1.33-py3-none-any.whl
  • Upload date:
  • Size: 41.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.8

File hashes

Hashes for enrichmap-0.1.33-py3-none-any.whl
Algorithm Hash digest
SHA256 ce9e0081be6a2d2b54777387e05edac34b3042148b49252b8c867ff918a2de77
MD5 5fdfc1eee37a659b5c181af71a0a7494
BLAKE2b-256 4484e98b9e2506e1167b81244d177e36dfd828a11075047c82ef3acffc5d9ab9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page