The goal of Giotto is to process, analyze and visualize single-cell spatial expression data. It can be used on virtually all current spatial datasets, although not all implemented analyses work for each type of technology. Firstly Giotto provides a flexible framework for common single-cell processing steps such as quality control, normalization, dimension reduction, clustering and cell type annotation. Next, it incorporates spatial information through the formation of a spatial grid and a spatial proximity network, which will be used in subsequent analyses to identify spatial genes or patterns, cell-cell preferential interactions and ligand-receptor signaling. Furthermore, the outcome of Giotto can be interactivily explored using Giotto Viewer, which allows you to overlay the obtained results with raw or additional images of the profiled tissue section(s). Simultaneously this package contains the data that was used in the recent seqFISH+ paper and can thus be used to explore or re-analyze this dataset.
- Added tools to identify spatial enrichment based on cell-type (or other) specific gene signature lists (NEW)
- Updated support for 3D spatial data (NEW)
- Added support for using global instructions and automatic plot saving option (NEW)
- Implemented SpatialDE
- Add wrapper for differential expression with MAST
- New example with 3D spatial data STARmap
- New example with the highly sensitive data from osmFISH
- New example on the Cerebellum with the scalable data from Slideseq
- New example on mouse olfactory bulb using immobilized primers on glass slides from Spatial Transcriptomics
- Updated seqFISH+ cortex example (NEW)
- Updated STARmap cortex example (NEW)
- New examples for merFISH (3D), MIBI (multiple patient tumor samples) and others will follow soon.
- R (>= 3.5.1)
- Python (>= 3.0)
- Windows, MacOS, Linux
You can install (~1-5 mins) the development version of Giotto with:
library(remotes)
# to install the latest stable version (advised)
remotes::install_github("RubD/Giotto")
# to install a specific release version (example)
remotes::install_github("RubD/Giotto@v0.1.0")
This is necessary to run all available analyses, including Leiden / Louvain clustering and to build and use the interactive visualization tool. An alternative, but less flexible, R version for Louvain clustering is also available. It is advisable to install everything within a specific conda environment and specify the python path in the R function when required.
Required python modules:
- pandas
- igraph
- networkx
- leidenalg
- community
Conda installation:
If conda install does not work, try ‘pip’
# pandas:
conda install -c anaconda pandas
# python-igraph, run on of the following:
conda install -c conda-forge python-igraph
conda install -c conda-forge/label/gcc7 python-igraph
conda install -c conda-forge/label/cf201901 python-igraph
# networkx:
conda install -c anaconda networkx
# louvain, run of the following:
conda install -c conda-forge python-louvain
conda install -c conda-forge/label/gcc7 python-louvain
conda install -c conda-forge/label/cf201901 python-louvain
# leidenalg:
conda install -c conda-forge leidenalg
See HMRF installation instructions.
- see https://github.com/RubD/spatial-datasets to find raw and pre-processed input data and Giotto scripts (in progress).
- typical run time for the cortex dataset on a personal computer is around 20~30 mins.
- click on the image and try them out yourself.
Howto’s and faqs examples:
- Cortex/SVZ and olfactory bulb data availability?
Expression and centroid information is part of Giotto, see examples. - How to create a giotto object with your own spatial network/grid, dimensions reduction, … ?
- How to add metadata and subset a Giotto object?
- How to create global instructions and show or save your created plots?
- How to test and store multiple parameters or analyses?
- …
-
Dries, R. et al. Giotto, a pipeline for integrative analysis and visualization of single-cell spatial transcriptomic data. bioRxiv 701680 (2019). doi:10.1101/701680 link
-
Eng, C.-H. L. et al. Transcriptome-scale super-resolved imaging in tissues by RNA seqFISH+. Nature 1 (2019). doi:10.1038/s41586-019-1049-y link
-
Zhu, Q., Shah, S., Dries, R., Cai, L. & Yuan, G.-C. Identification of spatially associated subpopulations by combining scRNAseq and sequential fluorescence in situ hybridization data. Nature Biotechnology (2018). doi:10.1038/nbt.4260 link