引言
本篇教程将向您展示如何利用Signac
软件包,将单细胞数据以基因组浏览器轨迹图的形式进行可视化展示。
为了进行演示,将采用处理过的人类外周血单个核细胞(PBMC)数据集。
library(Signac)
library(ggplot2)
# load PBMC dataset
pbmc <- readRDS("pbmc.rds")
Signac
提供了多种基因组浏览器风格的图表类型,例如可及性轨迹图、基因注释图、峰值坐标图、基因组链接图以及片段位置图。
1聚合信号图
Signac
的核心绘图功能是CoveragePlot()函数,该函数用于计算在特定基因组区域内,不同细胞群体的测序DNA片段的平均覆盖频率。
roi = "chr2-86784605-86808396"
cov_plot <- CoveragePlot(
object = pbmc,
region = roi,
annotation = FALSE,
peaks = FALSE
)
cov_plot
还可以通过基因名称请求基因组区域。这将使用 Seurat 对象中存储的基因坐标来确定要绘制的基因组区域
CoveragePlot(
object = pbmc,
region = "CD8A",
annotation = FALSE,
peaks = FALSE
)
个性化图表设置
所有由Signac函数生成的图表都是基于ggplot2或patchwork的,这意味着您可以利用ggplot2或其他相关包的标准功能来进一步调整或个性化这些图表。比如,如果想要修改之前图表中轨迹的颜色,可以利用ggplot2包中的scalefill系列函数,比如使用scale_fill_brewer()函数来实现。
cov_plot + scale_fill_brewer(type = "seq", palette = 1)
## Scale for fill is already present.
## Adding another scale for fill, which will replace the existing scale.
## Warning in RColorBrewer::brewer.pal(n, pal): n too large, allowed maximum for palette Blues is 9
## Returning the palette you asked for with that many colors
cov_plot + scale_fill_brewer(type = "qual", palette = 1)
## Scale for fill is already present.
## Adding another scale for fill, which will replace the existing scale.
## Warning in RColorBrewer::brewer.pal(n, pal): n too large, allowed maximum for palette Accent is 8
## Returning the palette you asked for with that many colors
请注意,当您使用 Patchwork 来合并图表时,可以利用 & 运算符对合并后的对象中的所有图表进行统一的美学调整。
基因注释图
您可以使用 AnnotationPlot() 函数来绘制特定基因组区域内的基因注释信息。
gene_plot <- AnnotationPlot(
object = pbmc,
region = roi
)
gene_plot
峰值位置
您可以通过 PeakPlot() 函数在特定的基因组区域内绘制出峰值的位置信息。
peak_plot <- PeakPlot(
object = pbmc,
region = roi
)
peak_plot
基因组间的联系
利用 LinkPlot() 函数,可以绘制基因组位置上的相互关系。该函数会以弧线形式展示两个相关位置之间的连接,弧线的透明度与该连接的评分成正比。这种连接可以用来表示多种信息,比如调控关系(例如,将增强子与其调控的基因相连),或者是实验数据,比如染色体互作(Hi-C)。
为了展示这个功能,创建了一个模拟的链接,并将其加入到了PBMC数据集中进行示例说明。
link_plot <- LinkPlot(
object = pbmc,
region = roi
)
link_plot