问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

单细胞分析 | 基因组区域的可视化 (1)

创作时间:
作者:
@小白创作中心

单细胞分析 | 基因组区域的可视化 (1)

引用
1
来源
1.
https://developer.aliyun.com/article/1630850

单细胞分析中的基因组区域可视化是理解细胞异质性和调控机制的重要手段。本文将介绍如何使用Signac软件包,将单细胞数据以基因组浏览器轨迹图的形式进行可视化展示。通过具体代码示例,展示如何绘制聚合信号图、基因注释图、峰值位置图和基因组间的联系图。

本篇教程将向您展示如何利用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包中的scale_fill系列函数,比如使用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

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号