Usage with SingleCellExperiment
Source:vignettes/single_cell_experiment.Rmd
single_cell_experiment.Rmd
The following is a full example of usage of the widget with a SingleCellExperiment object.
First, install the R dependencies:
install.packages("BiocManager")
BiocManager::install("scRNAseq")
BiocManager::install("scater")
Download the dataset, load and preprocess the SingleCellExperiment object, and configure the Vitessce widget:
library(vitessceR)
library(scRNAseq)
library(scater)
sce_zeisel <- ZeiselBrainData()
sce_zeisel <- addPerCellQC(sce_zeisel, subsets=list(Mito = grep("mt-", rownames(sce_zeisel))))
sce_zeisel <- logNormCounts(sce_zeisel)
sce_zeisel <- runPCA(sce_zeisel)
# Create Vitessce view config
vc <- VitessceConfig$new(schema_version = "1.0.16", name = "My config")
dataset <- vc$add_dataset("My dataset")$add_object(SCEWrapper$new(
sce_zeisel,
cell_set_metas = c("tissue", "level1class", "level2class"),
cell_set_meta_names = c("Tissue", "Cell Type Level 1", "Cell Type Level 2"),
cell_embeddings = c("PCA"),
out_dir = file.path("data", "sce")
))
scatterplot <- vc$add_view(dataset, Component$SCATTERPLOT, mapping = "PCA")
status <- vc$add_view(dataset, Component$STATUS)
desc <- vc$add_view(dataset, Component$DESCRIPTION)
desc <- desc$set_props(description = "Visualization of a SingleCellExperiment object.")
cell_sets <- vc$add_view(dataset, Component$CELL_SETS)
heatmap <- vc$add_view(dataset, Component$HEATMAP)
vc$link_views(
list(scatterplot, heatmap),
list(CoordinationType$GENE_EXPRESSION_COLORMAP_RANGE),
list(c(0.0, 0.05))
)
vc$layout(hconcat(
vconcat(scatterplot, heatmap),
vconcat(cell_sets, vconcat(desc, status))
))
# Render the Vitessce widget
vc$widget(theme = "light")