Deeply explore your bulk RNA-Seq data with interactive visualizations
Carnation is an interactive Shiny dashboard that transforms complex bulk RNA-Seq data into beautiful, insightful visualizations. Designed for both computational and experimental biologists, Carnation makes exploring differential expression analysis, functional enrichment, and pattern analysis intuitive and exciting.
Carnation is now on Bioconductor devel (Official release: April 2026)
Check out the official bioconductor page here for more details.
β¨ Key Features
-
Interactive Visualizations: Explore your data through multiple perspectives
- π PCA plots - Visualize sample relationships with gene loadings overlay
- π₯ Heatmaps - Examine expression patterns across samples and conditions
- π MA plots - Identify differentially expressed genes
- π§© UpSet plots - Discover overlapping gene sets across comparisons
- π Gene plots - Create customizable expression visualizations
-
Functional Enrichment Analysis: Understand the biological significance of your results
- π Network plots - Visualize gene-term relationships
- π Summary overviews - Compare enrichment across conditions
- π Fuzzy search - Find relevant pathways across genes or descriptions
- Pattern Analysis: Identify co-regulated gene clusters across conditions
- Gene Tracking: Keep your genes of interest at your fingertips with the βGene scratchpadβ
- Flexible Deployment: Run locally for personal analysis or on a server to share with collaborators
- User Management: Optional authentication system for controlled access in multi-user environments
π Installation
Carnation can be installed using BiocManager::install. First, start R (version: 4.6) and then run:
# first check to see if BiocManager is available
if(!requireNamespace('BiocManager', quietly=TRUE)){
install.packages('BiocManager')
}
BiocManager::install('carnation')To install the βdevelβ version
BiocManager::install('carnation', version='devel')remotes
You can install the developmental version of carnation from github using the remotes package:
install.packages('remotes')
remotes::install_github('NICHD-BSPC/carnation',
dependencies=TRUE, build_vignettes=TRUE)conda
An alternative way to get started with Carnation is through conda, which handles all dependencies automatically:
# Create environment outside the carnation directory
cd .. && conda env create -p env --file carnation/requirements-pinned.yaml
conda activate ./env
RThen install the package with the remotes package.
Note:
- Conda packages for R >= 4.6.0 may not be available yet causing installation using the default github branch to fail. To avoid this, use branch
r4.3which pins R to a lower version. - Here we set
upgrade='never'to make sure the conda-installed package versions remain unchanged.
remotes::install_github('NICHD-BSPC/carnation@r4.3', upgrade='never')π Getting Started
Data Organization
Organize your data in a directory structure that Carnation can easily navigate:
/carnation/data/
ββ project1
β ββ main.rds
β ββ subset.rds
β ββ main-nooutlier.rds
β
ββ project2
ββ default.rds
First Run
Load the library and install required Python dependencies:
library(carnation)
install_carnation() # Installs plotly and kaleido for PDF export
run_carnation()For remote servers with SSH port forwarding:
run_carnation(options=list(port=12345, launch.browser=FALSE))Then access Carnation at http://127.0.0.1:12345
π Exploring Your Data
Once your data is loaded, Carnation offers multiple ways to explore:
-
DE Analysis: Analyze differential expression through multiple visualizations
- Summary: Get a quick overview of your differential expression results
- Metadata: Explore sample metadata and experimental design
- PCA Plot: Visualize sample relationships with gene loadings overlay
- MA Plot: Identify differentially expressed genes with statistical significance
- Gene Plot: Create customizable expression visualizations for genes of interest
- UpSet Plot: Discover overlapping gene sets across multiple comparisons
- Heatmap: Examine expression patterns across samples and conditions
-
Functional Enrichment: Understand the biological significance of your results
- Table: Interactive tables with powerful search capabilities
- Plots: Seven different visualizations including network plots and dendrograms
- Compare Results: Directly compare enrichment results between conditions
-
Pattern Analysis: Identify co-regulated gene clusters across conditions
- Plot: Visualize expression patterns of gene clusters
- Cluster Membership: Explore which genes belong to which clusters
- Gene Scratchpad: Track genes of interest across all visualizations
π Documentation
Each module includes comprehensive help documentation accessible through the help buttons throughout the interface. The documentation provides detailed explanations of plot options, statistical methods, and interpretation guidelines.