scRNA-seq starts with dissociation: tissue → cell suspension. That gives you each cell’s transcriptome but loses everywhere it ever was in the tissue. For developmental biology, immunology, and disease microenvironments, position is the answer to half your questions.
Spatial preview — what gets measured, where, and how
(x, y) location in the tissueThe left panel shows Hpca (a hippocampal marker) measured on a Visium tissue section — the gene’s expression traces the hippocampus. The right panel shows the same cells re-shuffled (as scRNA-seq would after dissociation) — same expression, no anatomy.
| Technology | Resolution | Throughput | Genome coverage | Best for |
|---|---|---|---|---|
| 10x Visium (v1, v2) | 55 µm spots | ~5,000 spots / section | Whole transcriptome | First spatial study; tissue overview |
| 10x Visium HD | 2 µm bins (sub-cellular) | ~6 M bins / section | Whole transcriptome | High-res Visium replacement (2023+) |
| 10x Xenium | Single-cell, sub-cellular | 100k–500k cells | 200–5000 gene panel | Single-cell-resolution spatial; targeted panels |
| MERFISH (Vizgen) | Sub-cellular | 100k–1M cells | ~500–1,000 gene panels (larger custom panels available) | High plex, single-cell resolution |
| NanoString / Bruker CosMx | Sub-cellular | similar to MERFISH | ~1,000-plex panels up to a ~19,000-gene whole-transcriptome panel | Clinical samples, FFPE |
| Slide-seq / Slide-tags | 10 µm | ~50k beads | Whole-tx (Slide-seq); Xenium-like (Slide-tags) | Higher resolution than Visium, less spatial-uniform |
| GeoMx DSP (Nanostring) | Region-of-interest | 100s of ROIs | Whole-tx or panel | Pathology-driven ROI analysis |
Note
Two axes to watch. Resolution (spot vs cell vs sub-cellular) and coverage (whole-transcriptome vs targeted panel). Visium is high-coverage / low-resolution; Xenium is targeted / high-resolution. The right choice depends on whether your hypothesis is “where in the tissue is gene X expressed?” (panel suffices) or “what are the cell-type-specific expression programs?” (whole-transcriptome better).
The key constraint: a Visium spot is not a single cell. Your “marker gene” expression at one spot is a mixture of whatever cells are within it. This shapes everything downstream — clustering recovers tissue regions (not cell types), DE recovers region-vs-region differences, and “deconvolution” is its own analytical step.
In 2023 10x released Visium HD with 2 µm × 2 µm capture squares (much smaller than a cell). Output bins at 8 µm (~1 cell) or 16 µm (multi-cell) provide the choice between resolution and depth. Same chemistry as classic Visium but ~1000× more bins per section.
For atlas-scale work in 2026, Visium HD has largely replaced classic Visium. The analysis pipeline is the same; the file sizes are bigger.
Per-spot QC metrics generalize from scRNA-seq (nCount_Spatial, nFeature_Spatial, percent.mt) but you should always plot them on the tissue — spatial QC is the fourth metric:
percent.mt? Could be necrotic tissue (real biology) or storage damage (technical).stxBrain (matched mouse brain sections)Note
Module 16 uses the stxBrain dataset from SeuratData: two matched Visium sections of an adult mouse brain — anterior (~2,700 spots) and posterior (~3,300 spots). It installs with one R command (SeuratData::InstallData("stxBrain")) — no manual download. Each spot is ~55 µm capturing ~1–10 cells. Anatomical landmarks to recognize: cortex, hippocampus (Hpca), white matter (Plp1), cerebellum (Pcp4).
Visium spots have a wider dynamic range than single cells (each spot is 1–10 cells). LogNormalize works but SCTransform is preferred — its regularized negative binomial models the depth-vs-variance relationship more cleanly at the spot level.
Tip
A spatial cluster that occupies one contiguous anatomical region is biologically meaningful (cortex, hippocampus, etc.). A cluster scattered as random spots across the section is typically a technical signature (depth, ambient RNA) — not real biology.
Some genes vary spot-to-spot with spatial structure (clear pattern on the tissue); some vary spot-to-spot but spatially randomly. The first kind is what you want.
Moran’s I is the standard test:
\[I = \frac{N}{W} \cdot \frac{\sum_i \sum_j w_{ij} (x_i - \bar x)(x_j - \bar x)}{\sum_i (x_i - \bar x)^2}\]
where \(w_{ij}\) is the spatial weight (large for spatially close spots, zero for far). High Moran’s I means high spatial autocorrelation — adjacent spots have similar expression.
Each Visium spot ≈ 1–10 cells. If a spot’s cluster is “putative neuron-rich region”, which kinds of neurons? In what proportions?
Deconvolution decomposes each spot’s mixture using a single-cell reference of the same tissue:
| Tool | Method | Notes |
|---|---|---|
RCTD / spacexr |
Maximum likelihood with cell-type-specific platform effects | Workshop default for Visium |
| CARD | Conditional autoregressive prior on neighborhood smoothness | Smoother results, harder to use |
| cell2location | Bayesian, Python | Atlas-scale; pairs natively with HCA |
| SPOTlight | Non-negative matrix factorization | Good when you don’t have a great reference |
| CIBERSORTx | Support-vector regression | Originally bulk; works on spatial |
Tip
Use a tissue-matched reference. Deconvolving a brain Visium with a PBMC reference returns garbage (PBMCs don’t include neurons). Match the reference to the tissue you sampled.
Standard clustering treats spots as iid points in expression space — but adjacent spots are spatially correlated. A spatial-aware clustering uses the tissue layout as an additional signal:
These typically yield smoother, more biologically interpretable spatial domains than standard Seurat clustering. Worth using for any “what are the regions?” question.
SpatialFeaturePlot(... pt.size.factor = 1.0, alpha = c(0.0, 1))) or annotate them.SpatialFeaturePlot: color on the H&E image should trace anatomy — Hpca in hippocampus, Plp1 in white matter; a uniform smear signals ambient RNA or failed normalizationSpatialDimPlot: clusters that form contiguous anatomical regions are real; clusters that scatter randomly across the tissue are probably technical artifactsslice coloring): spots from both sections should interleave after integration — remaining separation by slice means the technical batch was not correctedSCTransform is the standard normalization; Moran’s I finds spatially variable genesSingle Cell RNA-seq Workshop · Lecture 16