This function generates a PAGA plot based on the given Seurat object and PAGA result.
Usage
PAGAPlot(
srt,
paga = srt@misc$paga,
type = "connectivities",
reduction = NULL,
dims = c(1, 2),
cells = NULL,
show_transition = FALSE,
node_palette = "Paired",
node_palcolor = NULL,
node_size = 4,
node_alpha = 1,
node_highlight = NULL,
node_highlight_color = "red",
label = FALSE,
label.size = 3.5,
label.fg = "white",
label.bg = "black",
label.bg.r = 0.1,
label_insitu = FALSE,
label_repel = FALSE,
label_repulsion = 20,
label_point_size = 1,
label_point_color = "black",
label_segment_color = "black",
edge_threshold = 0.01,
edge_line = c("straight", "curved"),
edge_line_curvature = 0.3,
edge_line_angle = 90,
edge_size = c(0.2, 1),
edge_color = "grey40",
edge_alpha = 0.5,
edge_shorten = 0,
edge_offset = 0,
edge_highlight = NULL,
edge_highlight_color = "red",
transition_threshold = 0.01,
transition_line = c("straight", "curved"),
transition_line_curvature = 0.3,
transition_line_angle = 90,
transition_size = c(0.2, 1),
transition_color = "black",
transition_alpha = 1,
transition_arrow_type = "closed",
transition_arrow_angle = 20,
transition_arrow_length = grid::unit(0.02, "npc"),
transition_shorten = 0.05,
transition_offset = 0,
transition_highlight = NULL,
transition_highlight_color = "red",
aspect.ratio = 1,
title = "PAGA",
subtitle = NULL,
xlab = NULL,
ylab = NULL,
legend.position = "right",
legend.direction = "vertical",
theme_use = "theme_scop",
theme_args = list(),
return_layer = FALSE
)Arguments
- srt
A Seurat object containing a PAGA result.
- paga
The PAGA result from the Seurat object. Default is
srt@misc$paga.- type
The type of plot to generate. Possible values are
"connectivities"(default) and"connectivities_tree".- reduction
The type of reduction to use for the plot. Default is the default reduction in the Seurat object.
- dims
The dimensions of the reduction to use for the plot. Default is the first two dimensions.
- cells
The cells to include in the plot. Default is all cells.
- show_transition
Whether to display transitions between different cell states. Default is
FALSE.- node_palette
The color palette to use for node coloring. Default is
"Paired".- node_palcolor
A vector of colors to use for node coloring. Default is
NULL.- node_size
The size of the nodes in the plot. Default is
4.- node_alpha
A numeric value or column name of
nodespecifying the transparency of the nodes.- node_highlight
A character vector specifying the names of nodes to highlight.
- node_highlight_color
A character vector specifying the color for highlighting nodes.
- label
Whether to show labels for the nodes.
- label.size
The size of the labels.
- label.fg
A character vector specifying the foreground color of the labels.
- label.bg
A character vector specifying the background color of the labels.
- label.bg.r
The background color transparency of the labels.
- label_insitu
Whether to display the node group labels in situ or as numeric values.
- label_repel
Whether to use force-directed label repulsion.
- label_repulsion
The repulsion force for labels.
- label_point_size
The size of the points in the labels. Default is
1.- label_point_color
The color of the points in the labels. Default is
"black".- label_segment_color
The color of the lines connecting the points in the labels. Default is
"black".- edge_threshold
The threshold for including edges in the plot. Default is
0.01.- edge_line
The type of line to use for the edges. Possible values are
"straight"and"curved". Default is"straight".- edge_line_curvature
The curvature factor for curved edges. Default is
0.3.- edge_line_angle
The angle for curved edges. Default is
90.- edge_size
The size range for the edges. Default is
c(0.2, 1).- edge_color
The color of the edges. Default is
"grey40".- edge_alpha
The transparency of the edges. Default is
0.5.- edge_shorten
The amount to shorten the edges. Default is
0.- edge_offset
The offset for curved edges. Default is
0.- edge_highlight
The group(s) to highlight in the plot. Default is
NULL.- edge_highlight_color
The color to use for highlighting the edges. Default is
"red".- transition_threshold
The threshold for removing transitions.
- transition_line
A character vector specifying the type of line for transitions (straight, curved).
- transition_line_curvature
The curvature of curved transitions.
- transition_line_angle
The angle of curved transitions.
- transition_size
A numeric vector specifying the range of transition sizes.
- transition_color
A character vector specifying the color of the transitions.
- transition_alpha
The transparency of the transitions.
- transition_arrow_type
A character vector specifying the type of arrow for transitions (closed, open).
- transition_arrow_angle
The angle of the transition arrow.
- transition_arrow_length
The length of the transition arrow.
- transition_shorten
The length of the transition shorten.
- transition_offset
The length of the transition offset.
- transition_highlight
A character vector specifying the names of transitions to highlight.
- transition_highlight_color
A character vector specifying the color for highlighting transitions.
- aspect.ratio
The aspect ratio of the plot. Default is
1.- title
The title of the plot. Default is
"PAGA".- subtitle
The subtitle of the plot. Default is
NULL.- xlab
The label for the x-axis. Default is
NULL.- ylab
The label for the y-axis. Default is
NULL.- legend.position
The position of the legend. Possible values are "right", "left", "bottom", and "top". Default is
"right".- legend.direction
The direction of the legend. Possible values are "vertical" and "horizontal". Default is
"vertical".- theme_use
The name of the theme to use for the plot. Default is
"theme_scop".- theme_args
A list of arguments to pass to the theme function. Default is
list().- return_layer
Whether to return the plot as a ggplot2 layer. Default is
FALSE.
Examples
if (FALSE) { # \dontrun{
data(pancreas_sub)
pancreas_sub <- standard_scop(pancreas_sub)
pancreas_sub <- RunPAGA(
pancreas_sub,
group_by = "SubCellType",
linear_reduction = "PCA",
nonlinear_reduction = "UMAP",
return_seurat = TRUE
)
PAGAPlot(pancreas_sub)
PAGAPlot(
pancreas_sub,
type = "connectivities_tree"
)
PAGAPlot(
pancreas_sub,
reduction = "PCA"
)
PAGAPlot(
pancreas_sub,
reduction = "PAGAUMAP2D"
)
PAGAPlot(
pancreas_sub,
edge_shorten = 0.05
)
PAGAPlot(
pancreas_sub,
label = TRUE
)
PAGAPlot(
pancreas_sub,
label = TRUE,
label_insitu = TRUE
)
PAGAPlot(
pancreas_sub,
label = TRUE,
label_insitu = TRUE,
label_repel = TRUE
)
PAGAPlot(
pancreas_sub,
edge_line = "curved"
)
PAGAPlot(
pancreas_sub,
node_size = "GroupSize"
)
PAGAPlot(
pancreas_sub,
node_highlight = "Ductal"
)
PAGAPlot(
pancreas_sub,
edge_highlight = paste(
"Pre-endocrine",
levels(pancreas_sub$SubCellType),
sep = "-"
)
)
pancreas_sub <- RunSCVELO(
pancreas_sub,
group_by = "SubCellType",
linear_reduction = "PCA",
nonlinear_reduction = "UMAP",
return_seurat = TRUE
)
PAGAPlot(
pancreas_sub,
show_transition = TRUE
)
PAGAPlot(
pancreas_sub,
show_transition = TRUE,
transition_offset = 0.02
)
} # }