Documentation Index
Fetch the complete documentation index at: https://mintlify.com/satijalab/seurat-wrappers/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Nebulosa is an R package that visualizes single-cell data using kernel density estimation (KDE). Standard scatter plots of gene expression can be misleading in single-cell data due to dropout — genes that are expressed but recorded as zero. Nebulosa recovers this signal by incorporating cell-to-cell similarity in its density estimates, producing smooth, interpretable expression maps. Key advantages over rawFeaturePlot():
- Recovers signal from dropped-out features by pooling information from similar cells
- Removes spurious “random” expression in areas not supported by many cells
- Enables joint density visualization to identify co-expressing cell populations
Citation: Jose Alquicira-Hernandez and Joseph E. Powell. Nebulosa recovers single cell gene expression signals by kernel density estimation. doi: 10.18129/B9.bioc.NebulosaSource: powellgenomicslab/Nebulosa
Installation
Key function
plot_density() is the main function from the Nebulosa package. Its interface resembles Seurat’s FeaturePlot(), making it easy to drop into existing Seurat workflows.
Complete workflow
Normalize and reduce dimensions
Nebulosa works on any 2D embedding. Here, use SCTransform followed by PCA and UMAP:
Multi-feature visualization
Nebulosa supports plotting multiple features simultaneously and computing joint densities to identify co-expressing populations.Individual densities for multiple genes
Joint density
Usejoint = TRUE to multiply the per-gene densities into a single joint density plot. This highlights cells that co-express all queried genes:
Accessing individual plots
Setcombine = FALSE to get a list of ggplot objects. The last element is always the joint density:
Identifying cell populations with joint density
When to use Nebulosa
Nebulosa is most valuable for:- Dropped-out genes — genes with high dropout rates where raw expression plots are sparse and hard to interpret
- Co-expression analysis — identifying populations that express multiple markers simultaneously
- Communication in presentations — smoother density maps are often clearer for figures and talks
FeaturePlot() may be equally informative. Use Nebulosa alongside core Seurat visualization methods to draw more informed conclusions.