# Basic box plot.
p <- SCpubr::do_BoxPlot(sample = sample,
feature = "nCount_RNA")
p
Box plots
Basic usage
To generate a basic box plot you need to provide the seurat object and a feature to plot:
Use custom grouping
By default, the groups are the identities in the seurat object, but this can be controlled using group.by parameter
.
# Use custom grouping.
p <- SCpubr::do_BoxPlot(sample = sample,
feature = "nCount_RNA",
group.by = "annotation")
p
We can flip the plot if needed with flip = TRUE
:
# Flip the box plot.
p <- SCpubr::do_BoxPlot(sample = sample,
feature = "nCount_RNA",
flip = TRUE)
p
Modify aesthetic style
We can also apply another aesthetic style, which just colors the lines of the boxplots and leave the rest white with use_silhouette = TRUE
:
# Use silhouette style.
p <- SCpubr::do_BoxPlot(sample = sample,
feature = "nCount_RNA",
use_silhouette = TRUE)
p
Reorder by median values
We can reorder the values by their average mean, from highest to lowest with order = TRUE
:
# Order by median values.
p <- SCpubr::do_BoxPlot(sample = sample,
feature = "nCount_RNA",
order = TRUE)
p
Split by a second variable
We can further apply a second grouping by using split.by
.
# Apply second grouping.
p <- SCpubr::do_BoxPlot(sample = sample,
feature = "nCount_RNA",
split.by = "annotation")
p
Apply statistical tests to compare groups
Finally we can apply statistical tests to the groups, if we do not use split.by
. We can do that by setting use_test = TRUE
and providing the comparison as a list of pairs of items. The test, by default is wilcoxon test, but can be modified using test
. The correct use of such tests and their interpretation relies on the user.
# Apply statistical tests.
p <- SCpubr::do_BoxPlot(sample = sample,
feature = "nCount_RNA",
use_test = TRUE,
comparisons = list(c("0", "1"),
c("3", "4"),
c("5", "9")))
p
One can display this on symbols, or with numbers with map_signif_level
:
# Apply statistical tests and show the p-value.
p <- SCpubr::do_BoxPlot(sample = sample,
feature = "nCount_RNA",
use_test = TRUE,
comparisons = list(c("0", "1"),
c("3", "4"),
c("5", "9")),
map_signif_level = FALSE)
p