CellChat
R toolkit for inference, visualization and analysis of cell-cell communication from single-cell and spatially resolved transcriptomics
Install / Use
/learn @jinworks/CellChatREADME
Update
CellChat v3 (Spatial CellChat) is an updated version that
- enables the inference of cell-cell communication at single-cell resolution from spatial transcriptomics data.
- is applicable to diverse technologies of spatial transcriptomics data. We add Frequently Asked Questions (FAQ) when analyzing spatially resolved transcriptomics datasets, particularly on how to apply Spatial CellChat to different technologies of spatial transcriptomics data, including sequencing-based and in-situ imaging-based readouts.
CellChat v2 is a version that includes
- inference of spatially proximal cell-cell communication between interacting cell groups from spatially resolved transcriptomics
- expanded database CellChatDB v2 by including more than 1000 protein and non-protein interactions (e.g. metabolic and synaptic signaling) with rich annotations. A function named
updateCellChatDBis also provided for easily updating CellChatDB. - new functionalities enabling easily interface with other computational tools for single-cell data analysis and cell-cell communication analysis
- interactive web browser function to allow exploration of CellChat outputs of spatially proximal cell-cell communication
For the version history and detailed important changes, please see the NEWS file.
A step-by-step protocol for cell-cell communication analysis using CellChat is available at Jin et al., Nature Protocols 2024. Please kindly cite this paper when using CellChat version >= 1.5. We greatly appreciate the users' support and suggestions that make it possible for us to update CellChat since we published the first version in the year of 2021.
Capabilities
In addition to infer the intercellular communication from any given scRNA-seq data and spatially resolved transcriptomics data, CellChat provides functionality for further data exploration, analysis, and visualization.
- It can quantitatively characterize and compare the inferred cell-cell communication networks using an integrated approach by combining social network analysis, pattern recognition, and manifold learning approaches.
- It provides an easy-to-use tool for extracting and visualizing high-order information of the inferred networks. For example, it allows ready prediction of major signaling inputs and outputs for all cell populations and how these populations and signals coordinate together for functions.
- It enables comparative analysis of cell-cell communication across different conditions and identification of altered signaling and cell populations.
- It provides several visualization outputs to facilitate intuitive user-guided data interpretation.
Installation
To ensure efficient and scalable inference of cell-cell communication at single-cell resolution from spatial transcriptomics data, Spatial CellChat optimizes the data structure within CellChat object. To enable users still can run their previously calculated CellChat v1/v2 object and smoothly upgrade to CellChat v3, we currently deposite the source codes and tutorials of Spatial CellChat at another GitHub repository.
CellChat v3 (Spatial CellChat) R package can be easily installed from Github using devtools:
devtools::install_github("jinworks/SpatialCellChat")
Installation of other dependencies
- Install BiocNeighbors using
BiocManager::install("BiocNeighbors")if you encounter any issue. - Install MERINGUE using
devtools::install_github("JEFworks-Lab/MERINGUE")if you encounter any issue. - Install ALRA using
devtools::install_github("KlugerLab/ALRA")if you encounter any issue. - Install RcppML using
devtools::install_github("zdebruine/RcppML")if you encounter any issue.
CellChat v1/v2 R package can be easily installed from Github using devtools:
devtools::install_github("jinworks/CellChat")
Installation of other dependencies
- Install NMF (>= 0.23.0) using
install.packages('NMF'). Please check here for other solutions if you encounter any issue. You might can setSys.setenv(R_REMOTES_NO_ERRORS_FROM_WARNINGS=TRUE)if it throws R version error. - Install circlize (>= 0.4.12) using
devtools::install_github("jokergoo/circlize")if you encounter any issue. - Install ComplexHeatmap using
devtools::install_github("jokergoo/ComplexHeatmap")if you encounter any issue. - Install UMAP python pacakge for dimension reduction:
pip install umap-learn. Please check here if you encounter any issue.
Some users might have issues when installing CellChat pacakge due to different operating systems and new R version. Please check the following solutions:
- Installation on Mac OX with R > 3.6: Please re-install Xquartz.
- Installation on Windows, Linux and Centos: Please check the solution for Windows and Linux.
Tutorials
Please check the tutorial directory of the repo. Example datasets are publicly available at figshare. Please check the Jin et al., Nature Protocols 2024 for a comprehensive protocol of cell-cell communication analysis using CellChat.
Analysis of single-cell transcriptomics data
- Full tutorial for CellChat analysis of a single dataset with detailed explanation of each function
- Full tutorial for comparison analysis of multiple datasets
- Comparison analysis of multiple datasets with different cellular compositions
Analysis of spatially resolved omics data
- Brief tutorial for CellChat analysis of a single spatially resolved transcriptomic dataset
- Brief tutorial for CellChat analysis of multiple spatially resolved transcriptomic datasets
- Brief tutorial for CellChat analysis of spatial multiomics data
- Full tutorial for Spatial CellChat analysis of spatial transcriptomics data
- Frequently Asked Questions when analyzing spatially resolved transcriptomics datasets
Additional utilities
- Interface with other single-cell analysis toolkits (e.g., Seurat, SingleCellExperiment, Scanpy)
- Tutorial for updating ligand-receptor database CellChatDB
Web-based “CellChat Explorer”
We build a user-friendly web-based “CellChat Explorer” that contains two major components:
- Ligand-Receptor Interaction Explorer that allows easy exploration of our novel ligand-receptor interaction database, a comprehensive recapitulation of known molecular compositions including multimeric complexes and co-factors. Our database CellChatDB is a manually curated database of literature-supported ligand-receptor interactions in both human and mouse. Of note, this Explorer currently only shows the original CellChatDB, but did not include the new interactions in CellChatDB v2.
- Cell-Cell Communication Atlas Explorer that allows easy exploration of the cell-cell communication for any given scRNA-seq dataset that has been processed by our R toolkit CellChat.
We also developed an Interactive Web Browser that allows exploration of CellChat outputs of spatially proximal cell-cell communication using a built-in function runCellChatApp, and a standalone CellChat Shiny App for the above Cell-Cell Communication Atlas Explorer.
Help, Suggestion and Cont
Related Skills
node-connect
342.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
85.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
342.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
