STplot.Rd
Generates a plot of the location of spots/cells within an spatial sample, and colors them according to gene expression levels or spot/cell-level metadata
STplot(
x,
samples = NULL,
genes = NULL,
plot_meta = NULL,
ks = "dtc",
ws = NULL,
deepSplit = NULL,
color_pal = NULL,
data_type = "tr",
ptsize = NULL,
txsize = NULL
)
an STlist
a vector of numbers indicating the ST samples to plot, or their
sample names. If vector of numbers, it follow the order of samples in names(x@counts)
.
If NULL, the function plots all samples
a vector of gene names or a named list of gene sets. In the latter case, the averaged expression of genes within the sets is plotted
a column name in x@spatial_meta
to plot
the k values to plot or 'dtc' to plot results from dynamicTreeCut
clustering solutions. Requires previous analysis with STclust
the spatial weights to plot samples if STclust
was used
a logical or positive number indicating the deepSplit
, if
samples were analyzed with STclust
a string of a color palette from khroma
or RColorBrewer
, or a
vector with enough color names or HEX values
one of 'tr' or 'raw', to plot transformed or raw counts respectively
a number specifying the size of the points. Passed to the size
a number controlling the size of the text in the plot title and legend title. Passed to the element_text
aesthetic.
a list of plots
The function takes an STlist and plots the cells or spots in their spatial context.
The users can color the spots/cells according to the expression of selected genes,
cluster memberships, or any spot/cell level metadata included in x@spatial_meta
.
The function also can average expression of gene sets.
# Using included melanoma example (Thrane et al.)
# Download example data set from spatialGE_Data
thrane_tmp = tempdir()
unlink(thrane_tmp, recursive=TRUE)
dir.create(thrane_tmp)
lk='https://github.com/FridleyLab/spatialGE_Data/raw/refs/heads/main/melanoma_thrane.zip?download='
download.file(lk, destfile=paste0(thrane_tmp, '/', 'melanoma_thrane.zip'), mode='wb')
zip_tmp = list.files(thrane_tmp, pattern='melanoma_thrane.zip$', full.names=TRUE)
unzip(zipfile=zip_tmp, exdir=thrane_tmp)
# Generate the file paths to be passed to the STlist function
count_files <- list.files(paste0(thrane_tmp, '/melanoma_thrane'),
full.names=TRUE, pattern='counts')
coord_files <- list.files(paste0(thrane_tmp, '/melanoma_thrane'),
full.names=TRUE, pattern='mapping')
clin_file <- list.files(paste0(thrane_tmp, '/melanoma_thrane'),
full.names=TRUE, pattern='clinical')
# Create STlist
library('spatialGE')
melanoma <- STlist(rnacounts=count_files[c(1,2)],
spotcoords=coord_files[c(1,2)],
samples=clin_file) # Only first two samples
#> Warning: Sample ST_mel3_rep1 was not found among the count/coordinate files.
#> Warning: Sample ST_mel4_rep2 was not found among the count/coordinate files.
#> Found matrix data
#> Matching gene expression and coordinate data...
#> Converting counts to sparse matrices
#> Completed STlist!
melanoma <- transform_data(melanoma)
STplot(melanoma, gene='MLANA', samples='ST_mel1_rep2', ptsize=1)
#> $MLANA_ST_mel1_rep2
#>