| DimPlot | R Documentation |
DimPlot visualizes dimension reduction data (PCA, t-SNE, UMAP, etc.) as a 2D or 3D
scatter plot. DimPlot() colours points by a discrete grouping variable
(e.g., clusters), while FeatureDimPlot() colours points by a continuous
numeric feature (e.g., gene expression, lineage scores).
Both functions share the same internal engine (DimPlotAtomic) and support
an extensive set of annotation layers: group boundary marks, network/graph
edges, 2D density contours, lineage/trajectory curves, RNA-velocity arrows
(raw, grid, or stream), statistical summary mini-plots at group centroids,
point highlighting, background context points from other facets, and
flexible label positioning.
When dims has 3 elements, both functions automatically return an
interactive plotly 3D scatter plot (via DimPlotAtomic3D). Certain
2D-only features are silently ignored in 3D mode (see @param dims for
the full list).
Rendering scales with dataset size: standard geom_point() for small data,
automatic rasterisation via scattermore::geom_scattermore() when
nrow(data) > 1e5, or hex-bin aggregation (geom_hex() /
stat_summary_hex()).
FeatureDimPlot to visualize feature expression on dimension reduction plots.
Colours points by a
continuous numeric variable (e.g., gene expression, module score, lineage
pseudotime) using a gradient colour scale, with optional quantile trimming
and background cutoff.
When multiple features are provided and facet_by is not set, the data
is automatically pivoted to long format and faceted by feature name.
split_by = TRUE dispatches each feature to a separate plot for
independent layout control. split_by as a column name splits by that
column's levels, producing one plot per level with per-split palette
support.
For detailed split_by workflows, see the main DimPlot / FeatureDimPlot
documentation (@section split_by Workflow (FeatureDimPlot)).
DimPlot(
data,
dims = 1:2,
group_by,
group_by_sep = "_",
split_by = NULL,
split_by_sep = "_",
pt_size = NULL,
pt_alpha = 1,
bg_color = "grey80",
label_insitu = FALSE,
show_stat = !identical(theme, "theme_blank"),
label = FALSE,
label_size = 4,
label_fg = "white",
label_bg = "black",
label_bg_r = 0.1,
label_repel = FALSE,
label_repulsion = 20,
label_pt_size = 1,
label_pt_color = "black",
label_segment_color = "black",
order = c("as-is", "reverse", "high-top", "low-top", "random"),
highlight = NULL,
highlight_alpha = 1,
highlight_size = 1,
highlight_color = "black",
highlight_stroke = 0.8,
add_mark = FALSE,
mark_type = c("hull", "ellipse", "rect", "circle"),
mark_expand = unit(3, "mm"),
mark_alpha = 0.1,
mark_linetype = 1,
stat_by = NULL,
stat_plot_type = c("pie", "ring", "bar", "line"),
stat_plot_size = 0.1,
stat_args = list(palette = "Set1"),
graph = NULL,
edge_size = c(0.05, 0.5),
edge_alpha = 0.1,
edge_color = "grey40",
add_density = FALSE,
density_color = "grey80",
density_filled = FALSE,
density_filled_palette = "Greys",
density_filled_palcolor = NULL,
lineages = NULL,
lineages_trim = c(0.01, 0.99),
lineages_span = 0.75,
lineages_palette = "Dark2",
lineages_palcolor = NULL,
lineages_arrow = arrow(length = unit(0.1, "inches")),
lineages_linewidth = 1,
lineages_line_bg = "white",
lineages_line_bg_stroke = 0.5,
lineages_whiskers = FALSE,
lineages_whiskers_linewidth = 0.5,
lineages_whiskers_alpha = 0.5,
velocity = NULL,
velocity_plot_type = c("raw", "grid", "stream"),
velocity_n_neighbors = NULL,
velocity_density = 1,
velocity_smooth = 0.5,
velocity_scale = 1,
velocity_min_mass = 1,
velocity_cutoff_perc = 5,
velocity_group_palette = "Set2",
velocity_group_palcolor = NULL,
arrow_angle = 20,
arrow_color = "black",
arrow_alpha = 1,
streamline_l = 5,
streamline_minl = 1,
streamline_res = 1,
streamline_n = 15,
streamline_width = c(0, 0.8),
streamline_alpha = 1,
streamline_color = NULL,
streamline_palette = "RdYlBu",
streamline_palcolor = NULL,
streamline_bg_color = "white",
streamline_bg_stroke = 0.5,
keep_na = FALSE,
keep_empty = FALSE,
facet_by = NULL,
facet_scales = "fixed",
facet_nrow = NULL,
facet_ncol = NULL,
facet_byrow = TRUE,
title = NULL,
subtitle = NULL,
xlab = NULL,
ylab = NULL,
theme = "theme_this",
theme_args = list(),
aspect.ratio = 1,
legend.position = "right",
legend.direction = "vertical",
raster = NULL,
raster_dpi = c(512, 512),
hex = FALSE,
hex_linewidth = 0.5,
hex_count = TRUE,
hex_bins = 50,
hex_binwidth = NULL,
palette = "Paired",
palcolor = NULL,
palreverse = FALSE,
seed = 8525,
combine = TRUE,
nrow = NULL,
ncol = NULL,
byrow = TRUE,
axes = NULL,
axis_titles = axes,
guides = NULL,
design = NULL,
...
)
FeatureDimPlot(
data,
dims = 1:2,
features,
split_by = NULL,
split_by_sep = "_",
lower_quantile = 0,
upper_quantile = 0.99,
lower_cutoff = NULL,
upper_cutoff = NULL,
pt_size = NULL,
pt_alpha = 1,
bg_color = "grey80",
bg_cutoff = NULL,
label_insitu = FALSE,
show_stat = !identical(theme, "theme_blank"),
color_name = "",
label = FALSE,
label_size = 4,
label_fg = "white",
label_bg = "black",
label_bg_r = 0.1,
label_repel = FALSE,
label_repulsion = 20,
label_pt_size = 1,
label_pt_color = "black",
label_segment_color = "black",
order = c("as-is", "reverse", "high-top", "low-top", "random"),
highlight = NULL,
highlight_alpha = 1,
highlight_size = 1,
highlight_color = "black",
highlight_stroke = 0.8,
add_mark = FALSE,
mark_type = c("hull", "ellipse", "rect", "circle"),
mark_expand = unit(3, "mm"),
mark_alpha = 0.1,
mark_linetype = 1,
keep_na = FALSE,
keep_empty = FALSE,
stat_by = NULL,
stat_plot_type = c("pie", "ring", "bar", "line"),
stat_plot_size = 0.1,
stat_args = list(palette = "Set1"),
graph = NULL,
edge_size = c(0.05, 0.5),
edge_alpha = 0.1,
edge_color = "grey40",
add_density = FALSE,
density_color = "grey80",
density_filled = FALSE,
density_filled_palette = "Greys",
density_filled_palcolor = NULL,
lineages = NULL,
lineages_trim = c(0.01, 0.99),
lineages_span = 0.75,
lineages_palette = "Dark2",
lineages_palcolor = NULL,
lineages_arrow = arrow(length = unit(0.1, "inches")),
lineages_linewidth = 1,
lineages_line_bg = "white",
lineages_line_bg_stroke = 0.5,
lineages_whiskers = FALSE,
lineages_whiskers_linewidth = 0.5,
lineages_whiskers_alpha = 0.5,
velocity = NULL,
velocity_plot_type = c("raw", "grid", "stream"),
velocity_n_neighbors = NULL,
velocity_density = 1,
velocity_smooth = 0.5,
velocity_scale = 1,
velocity_min_mass = 1,
velocity_cutoff_perc = 5,
velocity_group_palette = "Set2",
velocity_group_palcolor = NULL,
arrow_angle = 20,
arrow_color = "black",
arrow_alpha = 1,
streamline_l = 5,
streamline_minl = 1,
streamline_res = 1,
streamline_n = 15,
streamline_width = c(0, 0.8),
streamline_alpha = 1,
streamline_color = NULL,
streamline_palette = "RdYlBu",
streamline_palcolor = NULL,
streamline_bg_color = "white",
streamline_bg_stroke = 0.5,
facet_by = NULL,
facet_scales = "fixed",
facet_nrow = NULL,
facet_ncol = NULL,
facet_byrow = TRUE,
title = NULL,
subtitle = NULL,
xlab = NULL,
ylab = NULL,
theme = "theme_this",
theme_args = list(),
aspect.ratio = 1,
legend.position = "right",
legend.direction = "vertical",
raster = NULL,
raster_dpi = c(512, 512),
hex = FALSE,
hex_linewidth = 0.5,
hex_count = FALSE,
hex_bins = 50,
hex_binwidth = NULL,
palette = "Spectral",
palcolor = NULL,
palreverse = FALSE,
seed = 8525,
combine = TRUE,
nrow = NULL,
ncol = NULL,
byrow = TRUE,
axes = NULL,
axis_titles = axes,
guides = NULL,
design = NULL,
...
)
data |
A data frame. |
dims |
A character vector of the column names to plot on the x, y (and optionally z) axes or a numeric vector of the column indices. When 3 dimensions are provided, a 3D interactive plot is created using plotly. Supported in 3D: group_by, features, labels, highlight, lineages, graph/network, show_stat, order. Not supported in 3D: add_mark, stat_by, add_density, velocity, hex, facet_by, raster. |
group_by |
Columns to group the data for plotting
For those plotting functions that do not support multiple groups,
They will be concatenated into one column, using |
group_by_sep |
The separator for multiple group_by columns. See |
split_by |
A character vector of column names to split the data by and
plot separately. If |
split_by_sep |
The separator for multiple split_by columns. See |
pt_size |
A numeric value of the point size. If NULL (default), the point size is auto-calculated as
|
pt_alpha |
A numeric value in |
bg_color |
A character string specifying the colour used for NA-valued points and
background context points drawn from other facets. Default is |
label_insitu |
A logical value. If |
show_stat |
A logical value. If |
label |
A logical value. If |
label_size |
A numeric value for the label text size. Passed to |
label_fg |
A character string for the label text (foreground) colour. Default is |
label_bg |
A character string for the label background / outline colour. Default is |
label_bg_r |
A numeric value for the background fill ratio of the label bounding box.
Passed to |
label_repel |
A logical value. If |
label_repulsion |
A numeric value for the repulsion force when |
label_pt_size |
A numeric value for the size of the anchor point drawn when
|
label_pt_color |
A character string for the colour of the label anchor point. Default is |
label_segment_color |
A character string for the colour of the line segment connecting
the label to the anchor. Used in non-repel mode ( |
order |
A character string controlling the draw order of points:
For |
highlight |
A specification for highlighted points:
|
highlight_alpha |
A numeric value in |
highlight_size |
A numeric value for the size of the inner (coloured) highlight point.
Default is |
highlight_color |
A character string for the colour of the outer highlight ring.
Default is |
highlight_stroke |
A numeric value for the thickness of the outer highlight ring (the
difference between the outer ring size and |
add_mark |
A logical value. If |
mark_type |
A character string specifying the mark shape. Options:
|
mark_expand |
A unit value for the outward expansion of the mark boundary.
Passed to |
mark_alpha |
A numeric value in |
mark_linetype |
A numeric value for the line type of the mark boundary. Default is |
stat_by |
A character string naming a column used to compute per-group statistical summary
mini-plots embedded at group centroid positions. Only supported with |
stat_plot_type |
A character string specifying the mini-plot type. Options:
|
stat_plot_size |
A numeric value for the size of the stat mini-plot, expressed as a
fraction of the axis range. Default is |
stat_args |
A list of additional arguments passed to the stat plot function
(e.g., |
graph |
A specification for network / graph edges to overlay. Sources:
|
edge_size |
A numeric vector of length 2 specifying the range |
edge_alpha |
A numeric value in |
edge_color |
A character string for the colour of graph edges. Default is |
add_density |
A logical value. If |
density_color |
A character string for the colour of the density contour lines.
Used when |
density_filled |
A logical value. If |
density_filled_palette |
A character string naming the palette for the filled density layer.
Default is |
density_filled_palcolor |
A character vector of specific colours for the filled density
palette. Default is |
lineages |
A character vector of column names representing pseudotime / trajectory lineages.
Each column is fitted with a LOESS smooth ( |
lineages_trim |
A numeric vector of length 2 specifying the lower and upper quantile
thresholds |
lineages_span |
A numeric value passed as |
lineages_palette |
A character string naming the palette for lineage colours.
Default is |
lineages_palcolor |
A character vector of specific colours for lineage curves.
Default is |
lineages_arrow |
A ggplot2 |
lineages_linewidth |
A numeric value for the width of the lineage curve lines.
Default is |
lineages_line_bg |
A character string for the colour of the background (wider) stroke
drawn behind each lineage curve for improved visibility. Default is |
lineages_line_bg_stroke |
A numeric value for the additional width of the background
stroke relative to |
lineages_whiskers |
A logical value. If |
lineages_whiskers_linewidth |
A numeric value for the width of the whisker lines.
Default is |
lineages_whiskers_alpha |
A numeric value in |
velocity |
A specification for RNA-velocity arrows. Can be:
|
velocity_plot_type |
A character string specifying the velocity rendering style.
Options: |
velocity_n_neighbors |
A numeric value for the number of neighbours used in the
velocity grid computation. Default is |
velocity_density |
A numeric value for the velocity kernel density bandwidth.
Default is |
velocity_smooth |
A numeric value for the velocity smoothing parameter.
Default is |
velocity_scale |
A numeric value for scaling the velocity arrows. Default is |
velocity_min_mass |
A numeric value for the minimum cell mass threshold in velocity
grid computation. Default is |
velocity_cutoff_perc |
A numeric value for the velocity cutoff percentage.
Default is |
velocity_group_palette |
A character string naming the palette for velocity group
colours (used in |
velocity_group_palcolor |
A character vector of specific colours for velocity groups.
Default is |
arrow_angle |
A numeric value specifying the angle of the arrowheads in degrees. Applied to |
arrow_color |
A character string specifying the color of the velocity arrows. For |
arrow_alpha |
A numeric value between 0 and 1 specifying the transparency of the velocity arrows. Only used when |
streamline_l |
A numeric value specifying the integration length of the streamlines. Passed to |
streamline_minl |
A numeric value specifying the minimum streamline length. Shorter streamlines are not drawn. Passed to |
streamline_res |
A numeric value specifying the resolution of the streamline integration. Passed to |
streamline_n |
A numeric value specifying the number of streamlines to draw. Passed to |
streamline_width |
A numeric vector of length 2 specifying the range of line widths for streamlines. Passed to |
streamline_alpha |
A numeric value between 0 and 1 specifying the transparency of the velocity streamlines. Default is 1. |
streamline_color |
An optional character string specifying a fixed color for streamlines. When |
streamline_palette |
A character string specifying the color palette for streamline velocity magnitude. Passed to |
streamline_palcolor |
An optional character vector of specific colors for the streamline velocity gradient. If |
streamline_bg_color |
A character string specifying the background (outline) color applied to streamlines to create a stroke effect. Default is |
streamline_bg_stroke |
A numeric value specifying the additional line width of the background stroke relative to the foreground streamline. Default is 0.5. |
keep_na |
A logical value or a character to replace the NA values in the data.
It can also take a named list to specify different behavior for different columns.
If TRUE or NA, NA values will be replaced with NA.
If FALSE, NA values will be removed from the data before plotting.
If a character string is provided, NA values will be replaced with the provided string.
If a named vector/list is provided, the names should be the column names to apply the behavior to,
and the values should be one of TRUE, FALSE, or a character string.
Without a named vector/list, the behavior applies to categorical/character columns used on the plot,
for example, the |
keep_empty |
One of FALSE, TRUE and "level". It can also take a named list to specify
different behavior for different columns. Without a named list, the behavior applies to the
categorical/character columns used on the plot, for example, the
|
facet_by |
A character string specifying the column name of the data frame to facet the plot.
Otherwise, the data will be split by |
facet_scales |
Whether to scale the axes of facets. Default is "fixed"
Other options are "free", "free_x", "free_y". See |
facet_nrow |
A numeric value specifying the number of rows in the facet. When facet_by is a single column and facet_wrap is used. |
facet_ncol |
A numeric value specifying the number of columns in the facet. When facet_by is a single column and facet_wrap is used. |
facet_byrow |
A logical value indicating whether to fill the plots by row. Default is TRUE. |
title |
A character string specifying the title of the plot. A function can be used to generate the title based on the default title. This is useful when split_by is used and the title needs to be dynamic. |
subtitle |
A character string specifying the subtitle of the plot. |
xlab |
A character string specifying the x-axis label. |
ylab |
A character string specifying the y-axis label. |
theme |
A character string or a theme class (i.e. ggplot2::theme_classic) specifying the theme to use. Default is "theme_this". |
theme_args |
A list of arguments to pass to the theme function. |
aspect.ratio |
A numeric value specifying the aspect ratio of the plot. |
legend.position |
A character string specifying the position of the legend.
if |
legend.direction |
A character string specifying the direction of the legend. |
raster |
A logical value. If |
raster_dpi |
A numeric vector of length 2 |
hex |
A logical value. If |
hex_linewidth |
A numeric value for the width of the hexagon boundary lines.
Default is |
hex_count |
A logical value. If |
hex_bins |
A numeric value for the number of hex bins along each axis.
Passed to |
hex_binwidth |
A numeric value for the width of individual hex bins.
Passed to |
palette |
A character string specifying the palette to use.
A named list or vector can be used to specify the palettes for different |
palcolor |
A character string specifying the color to use in the palette.
A named list can be used to specify the colors for different |
palreverse |
A logical value indicating whether to reverse the palette. Default is FALSE. |
seed |
The random seed to use. Default is 8525. |
combine |
Whether to combine the plots into one when facet is FALSE. Default is TRUE. |
nrow |
A numeric value specifying the number of rows in the facet. |
ncol |
A numeric value specifying the number of columns in the facet. |
byrow |
A logical value indicating whether to fill the plots by row. |
axes |
A string specifying how axes should be treated. Passed to
|
axis_titles |
A string specifying how axis titltes should be treated. Passed to
|
guides |
A string specifying how guides should be treated in the layout. Passed to
|
design |
Specification of the location of areas in the layout, passed to |
... |
Additional arguments. |
features |
A character vector of the column names to plot as features (continuous colouring).
When multiple features are provided and |
lower_quantile, upper_quantile |
Lower and upper quantiles for the continuous color/fill scale.
The actual cutoffs are determined by these quantiles when |
lower_cutoff, upper_cutoff |
Explicit lower and upper cutoffs for the continuous color/fill scale.
When |
bg_cutoff |
A numeric threshold. Feature values with absolute value below this
cutoff are set to |
color_name |
A character string used as the title for the continuous colour bar
in feature mode. Default is |
A ggplot object (single plot), a patchwork / wrap_plots object
(when split_by is provided and combine = TRUE), or a list of ggplot
objects (when split_by is provided and combine = FALSE).
When dims has 3 elements, a plotly object is returned instead.
A ggplot object (single plot), a patchwork / wrap_plots object
(when split_by is provided and combine = TRUE), or a list of ggplot
objects (when split_by is provided and combine = FALSE).
When dims has 3 elements, a plotly object is returned instead.
When split_by is specified, DimPlot() executes the following pipeline:
Argument validation — validate_common_args() checks the seed and
blocks split_by + velocity combinations.
NA / empty normalisation — check_keep_na() / check_keep_empty()
convert keep_na / keep_empty to per-column lists.
Theme resolution — process_theme() resolves the theme string to a
theme function.
Split column resolution — check_columns() validates split_by
(force_factor, concat_multi).
Pre-filtering — process_keep_na_empty() removes NA / empty levels
from the split column, then data is split by split_by levels (order
preserved). When graph references an attribute (@graph), the graph
matrix is also subset per split.
Per-split parameter resolution — check_palette(),
check_palcolor(), check_legend() resolve palette, palcolor,
legend.position, and legend.direction for each split.
Per-split dispatch — each split is passed to DimPlotAtomic() with
its resolved parameters. Title defaults to the split level name unless
title is a function.
Combination — combine_plots() assembles the list of plots via
patchwork::wrap_plots(), applying nrow, ncol, byrow, axes,
axis_titles, guides, and design.
FeatureDimPlot() supports two forms of splitting:
A. split_by = TRUE (split by features)
Each feature in features is dispatched individually to
DimPlotAtomic(), producing one plot per feature. The plot title
defaults to the feature name.
Plots are combined via combine_plots() with split_by = ".features".
B. split_by as a column name (split by data column)
Data is split by the named column's levels (same pipeline as DimPlot steps 1–8 above). Graph attribute splitting is supported.
VelocityPlot
data(dim_example)
# basic dim plot
DimPlot(dim_example, group_by = "clusters")
DimPlot(dim_example, group_by = "clusters", theme = "theme_blank")
DimPlot(dim_example, group_by = "clusters", theme = ggplot2::theme_classic,
theme_args = list(base_size = 16), palette = "seurat")
# raster and highlighting
DimPlot(dim_example, group_by = "clusters", raster = TRUE, raster_dpi = 50)
DimPlot(dim_example, group_by = "clusters", highlight = 1:20,
highlight_color = "black", highlight_stroke = 2)
DimPlot(dim_example, group_by = "clusters", highlight = TRUE, facet_by = "group",
theme = "theme_blank")
# labels
DimPlot(dim_example, group_by = "clusters", label = TRUE,
label_size = 5, label_bg_r = 0.2)
DimPlot(dim_example, group_by = "clusters", label = TRUE, label_fg = "red",
label_bg = "yellow", label_size = 5)
DimPlot(dim_example, group_by = "clusters", label = TRUE, label_insitu = TRUE)
# group marks
DimPlot(dim_example, group_by = "clusters", add_mark = TRUE)
DimPlot(dim_example, group_by = "clusters", add_mark = TRUE, mark_linetype = 2)
DimPlot(dim_example, group_by = "clusters", add_mark = TRUE, mark_type = "ellipse")
# density overlays
DimPlot(dim_example, group_by = "clusters", add_density = TRUE)
DimPlot(dim_example, group_by = "clusters", add_density = TRUE, density_filled = TRUE)
DimPlot(dim_example, group_by = "clusters", add_density = TRUE, density_filled = TRUE,
density_filled_palette = "Blues", highlight = TRUE)
# statistics at group centroids
DimPlot(dim_example, group_by = "clusters", stat_by = "group")
DimPlot(dim_example, group_by = "clusters", stat_by = "group",
stat_plot_type = "bar", stat_plot_size = 0.06)
# hex bins
DimPlot(dim_example, group_by = "clusters", hex = TRUE)
DimPlot(dim_example, group_by = "clusters", hex = TRUE, hex_bins = 20)
DimPlot(dim_example, group_by = "clusters", hex = TRUE, hex_count = FALSE)
# graph / network edges
DimPlot(dim_example, group_by = "clusters", graph = "@graph", edge_color = "grey80")
# lineages / trajectories
DimPlot(dim_example, group_by = "clusters", lineages = c("stochasticbasis_1", "stochasticbasis_2"))
DimPlot(dim_example, group_by = "clusters", lineages = c("stochasticbasis_1", "stochasticbasis_2"),
lineages_whiskers = TRUE, lineages_whiskers_linewidth = 0.1)
DimPlot(dim_example, group_by = "clusters", lineages = c("stochasticbasis_1", "stochasticbasis_2"),
lineages_span = 0.4)
# split_by
DimPlot(dim_example, group_by = "clusters", split_by = "group",
palette = list(A = "Paired", B = "Set1"))
# velocity
DimPlot(dim_example, group_by = "clusters", velocity = c("stochasticbasis_1", "stochasticbasis_2"),
pt_alpha = 0)
DimPlot(dim_example, group_by = "clusters", velocity = 3:4,
velocity_plot_type = "grid", arrow_alpha = 0.6)
DimPlot(dim_example, group_by = "clusters", velocity = 3:4,
velocity_plot_type = "stream")
# 3D plots (returns a plotly object)
DimPlot(dim_example, dims = 1:3, group_by = "clusters")
DimPlot(dim_example, dims = 1:3, group_by = "clusters", label = TRUE,
label_insitu = TRUE)
DimPlot(dim_example, dims = c("basis_1", "basis_2", "stochasticbasis_1"),
group_by = "clusters", graph = "@graph", edge_color = "grey80")
# keep_na and keep_empty
dim_example$clusters[dim_example$clusters == "Ductal"] <- NA
DimPlot(dim_example, group_by = "clusters", keep_na = FALSE, keep_empty = TRUE)
DimPlot(dim_example, group_by = "clusters", keep_na = TRUE, keep_empty = TRUE)
DimPlot(dim_example, group_by = "clusters", keep_na = TRUE, keep_empty = FALSE)
data(dim_example)
# single feature
FeatureDimPlot(dim_example, features = "stochasticbasis_1", pt_size = 2)
FeatureDimPlot(dim_example, features = "stochasticbasis_1", pt_size = 2, bg_cutoff = 0)
FeatureDimPlot(dim_example, features = "stochasticbasis_1", raster = TRUE, raster_dpi = 30)
# multiple features (auto-pivoted to long, faceted by feature)
FeatureDimPlot(dim_example, features = c("stochasticbasis_1", "stochasticbasis_2"),
pt_size = 2)
# single feature with facet_by (facet_by works when only 1 feature)
FeatureDimPlot(dim_example, features = c("stochasticbasis_1"), pt_size = 2,
facet_by = "group")
# multiple features with split_by for independent layout
FeatureDimPlot(dim_example, features = c("stochasticbasis_1", "stochasticbasis_2"),
split_by = "group", nrow = 2)
# highlight and hex
FeatureDimPlot(dim_example, features = c("stochasticbasis_1", "stochasticbasis_2"),
highlight = TRUE)
FeatureDimPlot(dim_example, features = c("stochasticbasis_1", "stochasticbasis_2"),
hex = TRUE, hex_bins = 15)
FeatureDimPlot(dim_example, features = c("stochasticbasis_1", "stochasticbasis_2"),
hex = TRUE, hex_bins = 15, split_by = "group", palette = list(A = "Reds", B = "Blues"))
# 3D plots (returns a plotly object)
FeatureDimPlot(dim_example, dims = 1:3, features = "stochasticbasis_2", pt_size = 2)
FeatureDimPlot(dim_example, dims = c("basis_1", "basis_2", "stochasticbasis_1"),
features = "stochasticbasis_2")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.