SCpubr R包介绍
SCpubr 是一个用于单细胞转录组数据可视化的R包,其主要目标是为研究人员提供一种简化的流程,自动生成高质量、适合发表的图表。该包由Enrique Blanco-Carmona开发和维护,最新版本为2.0.2。
主要作用
1. 生成高质量图表:SCpubr能够自动生成多种单细胞数据可视化图表,包括点图、箱线图、小提琴图、热图等。
2. 多种图表类型:支持多种图表类型,如Alluvial图、Bar图、BeeSwarm图、Box图、Chord图、Correlation图、Dot图、Enrichment热图、Expression热图、Feature图、Functional Annotation图、Geyser图、Ridge图、Term Enrichment图、TF Activity图、Volcano图等。并且都有对应的详细介绍,可以学的很方便
3. 灵活的自定义选项:虽然图表是自动生成的,但也可以根据需要对颜色、字体、布局等进行自定义,以满足特定的美化要求。
4. 完整的说明文档: Have a look at extensive tutorials in SCpubr’s book.,加载R包的时候就可以看到,可可爱爱的加载说明
安装方法
-
从CRAN安装:
install.packages("SCpubr")
library(SCpubr)
-
从GitHub安装最新开发版: if(!requireNamespace("devtools", quietly = TRUE)){
install.packages("devtools") # 如果未安装
}
devtools::install_github("enblacar/SCpubr")
那接下来的时间就来摸索看看SCpubr美化可视化结果叭!上一次整理的R包系列还是——探索scCustomize:提升单细胞数据分析与可视化的利器!
do_DimPlot: Wrapper for DimPlot
首先来学习一下do_DimPlot
—— 是一个封装了 Seurat 包中 DimPlot
函数的工具函数,用于生成单细胞数据的降维可视化图表。它提供了丰富的参数选项,可以高度自定义图表的外观和布局。
参数总结:
输入数据
-
sample:Seurat对象,由 CreateSeuratObject
创建。 -
reduction:要使用的降维方法,如”umap”、”pca”或自定义方法。默认为”umap”,如果未指定且存在,则使用最后一个计算的降维方法。
分组与拆分
-
group.by:用于分组的元数据变量,必须是字符或因子列。 -
split.by:用于进一步分组(拆分)的二级元数据变量,也必须是字符或因子列。
颜色设置
-
colors.use:用于分组的颜色向量,可以是颜色名称或十六进制代码。如果未提供,将使用默认颜色。 -
na.value:用于表示NA值的颜色,默认为”grey75″。
绘图选项
-
shuffle:是否随机打乱细胞,避免按簇顺序绘制。推荐设置为TRUE。 -
order:要绘制的细胞身份向量,可以是全部或部分身份。 -
raster:是否将结果绘图栅格化,适用于绘制大量细胞时。 -
pt.size:点的大小。 -
label:是否在UMAP上绘制簇标签,标签颜色与簇颜色相同。 -
label.color:标签颜色。 -
label.fill:标签填充颜色,如果为NULL,则使用簇颜色。 -
label.size:标签大小。 -
label.box:是否将标签绘制为 geom_text
(FALSE)或geom_label
(TRUE)。 -
repel:是否使文本标签相互排斥。
高亮显示
-
cells.highlight:要高亮显示的细胞向量。 -
idents.highlight:要高亮显示的身份向量。 -
idents.keep:要保留的身份向量,其余细胞将被设置为NA。 -
sizes.highlight:使用 cells.highlight
参数时的高亮细胞点大小。
图表布局
-
ncol:使用 split.by
参数时,输出绘图的列数。 -
dims:要绘制的降维维度,默认为c(1, 2)。
图表标题与注释
-
plot.title:图表标题。 -
plot.subtitle:图表副标题。 -
plot.caption:图表注释。 -
legend.title:图例标题。 -
legend.position:图例位置,可选”top”、”bottom”、”left”、”right”或”none”。 -
legend.title.position:图例标题位置,可选”top”、”bottom”、”left”、”right”。 -
legend.ncol:图例列数。 -
legend.nrow:图例行数。 -
legend.icon.size:图例图标大小。 -
legend.byrow:是否按行填充图例。
边框与轮廓
-
plot_cell_borders:是否绘制细胞边框。 -
border.size:细胞边框宽度。 -
border.color:边框颜色。 -
border.density:控制绘制边框时使用的细胞数量,值在0到1之间。
边际分布
-
plot_marginal_distributions:是否绘制边际分布。 -
marginal.type:边际分布类型,可选”density”、”histogram”、”boxplot”、”violin”、”densigram”。 -
marginal.size:主图与边际图的大小比例。 -
marginal.group:是否按 group.by
或当前身份分组边际分布。
其他
-
plot.axes:是否绘制坐标轴。 -
plot_density_contour:是否在UMAP上绘制密度轮廓。 -
contour.position:密度轮廓绘制位置,可选”top”或”bottom”。 -
contour.color:密度轮廓颜色。 -
contour.lineend:轮廓线条末端样式,可选”round”、”butt”、”square”。 -
contour.linejoin:轮廓线条连接样式,可选”round”、”mitre”、”bevel”。 -
contour_expand_axes:扩展轴的百分比,以适应轮廓。 -
font.size:整体字体大小。 -
font.type:基础字体族,可选”mono”、”serif”、”sans”。 -
plot.title.face、plot.subtitle.face、plot.caption.face、axis.title.face、axis.text.face、legend.title.face、legend.text.face:控制相应主题元素的字体样式,可选”plain”、”italic”、”bold”、”bold.italic”。
使用初探
使用数据——pbmc
这里还是使用pbmc
注释后的数据进行可视化,也为了和直接可视化的函数进行对比
数据包含了注释信息,可用于可视化
直接可视化对比
do_DimPlot(sample = pbmc)/DimPlot(pbmc)
个人认为对比而言,do_DimPlot的默认参数设置有几点优势:
-
使用 pt.size = 1
使得细胞可视化的时候更加突出,也使得默认的颜色看起来更加饱和 -
关于图例,默认参数 legend.position = "bottom"
,将图例放到了最下方,并且默认plot.axes = FALSE
不显示坐标轴,整体会更突出umap结果图
更多参数调整
-
调整坐标轴:可以设置是否显示坐标轴、坐标轴的标题和字体样式等。
-
添加簇标签:可以在图上显示每个簇的标签。
-
调整绘图顺序:可以指定细胞或簇的绘图顺序。
-
高亮特定细胞:可以高亮显示特定的细胞或簇。
-
限制显示的簇:可以限制图中显示的簇或身份。
-
按元数据分组:可以按另一个元数据变量进行分组。
-
按类别拆分:可以按类别进一步拆分分组。
-
组合分组和拆分:可以按一个变量分组,同时按另一个变量拆分。
这篇就简单的了解一下R包的安装以及do_DimPlot的参数设置,下一篇具体使用do_DimPlot来进行可视化!