跳到正文
方法与工具Nat Commun · 光学基因组图谱方法扩展

利用无酶密集光学基因组图谱实现酵母基因组的染色体尺度组装

Chromosome-scale assembly of yeast genomes using enzyme-free, dense optical genome mapping.

一句话将DOGMA扩展至酵母真核基因组,通过分阶段处理重复区域实现染色体尺度光学图谱组装。

论文图表(5)

Fig. 1:本图展示从单条 DNA 分子的光学成像和荧光条形码提取,到质量控制、DOGMA 组装及参考辅助优化的完整流程。最终通过共识条形码与参考染色体的比对,展示染色体尺度的组装结果及其与参考序列的差异。
Fig. 1 本图展示从单条 DNA 分子的光学成像和荧光条形码提取,到质量控制、DOGMA 组装及参考辅助优化的完整流程。最终通过共识条形码与参考染色体的比对,展示染色体尺度的组装结果及其与参考序列的差异。

工作流程概览。a CB 标记的 DNA 分子在纳米通道中被拉伸、成像并检测(红框),以生成连续的荧光强度曲线,称为条形码。b 提取的条形码经过自动化质量控制和重复区域(红色)检测。c 使用 DOGMA 流程进行多步骤组装,从单个条形码(蓝色)生成条形码重叠群(bargroups,黑色)。d 将 bargroups(彩色)与参考基因组(灰色)比对,以借助参考基因组完善尚未解决的连接、进行验证和结构比较。罗马数字表示染色体编号。e 从共识 bargroups 生成染色体尺度的组装结果(黑色),并与每条参考染色体(灰色)比对。参考序列中存在但共识序列中不存在的片段以黄色突出显示,共识序列中存在但参考序列中不存在的片段以蓝色突出显示。源数据以 Source Data 文件提供。

图片来自 Nat Commun(Leal-Garza LM, et al.),doi:10.1038/s41467-026-78211-7,按 CC BY 4.0 许可原样转载。

a显微/影像图片
DNA 成像与荧光条形码提取不可复现

上方为 DNA 分子成像,红框标出检测的分子,比例尺为 10 μm;中间展示局部图像,下方为对应的连续荧光强度曲线。曲线沿分子位置的起伏构成条形码。

该子图包含 DNA 光学成像,不能仅通过读取表格数据复现完整子图。

b折线图
条形码质量控制与重复区域检测可直接复现

多条曲线分行展示提取的条形码,横向为条形码沿分子的延伸方向,曲线起伏表示荧光强度变化,图中未标数值刻度。红色标出检测到的重复区域,其余区域为蓝色。

图注明确说明提供 Source Data,可据其中的条形码曲线数据重绘该折线图。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

c折线图
单分子条形码组装为 bargroup可直接复现

蓝色曲线为不同单分子的条形码,黑色曲线为 DOGMA 多步骤组装得到的 bargroup。观察蓝色曲线重叠区域的峰谷如何与黑色组装曲线对应;坐标未标数值刻度。

图注明确提供 Source Data,单条条形码及组装条形码的曲线可用表格数据重绘。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

d折线图
bargroups 与参考染色体比对可直接复现

不同颜色标示参与比对的 bargroups,灰色表示参考基因组,罗马数字 I、II、III 表示染色体编号。通过曲线峰谷及其所在位置的对应关系,查看各片段的比对和连接情况。

图注明确提供 Source Data,可利用条形码曲线及其比对位置数据重绘参考比对图。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

e折线图
染色体尺度共识组装与参考比较可直接复现

黑色为共识 bargroups 生成的染色体尺度组装,灰色为参考染色体,重点观察两条曲线的重合程度。黄色表示参考中存在而共识中不存在的片段,蓝色表示共识中存在而参考中不存在的片段。

图注明确提供 Source Data,共识与参考的曲线及差异片段数据可用于重绘该图。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

R 复现 · Fig. 1c折线图对比得分 97
Fig. 1c 的 R 复现图

结论:复现图忠实还原了三条错位排列的单分子条形码及底部黑色组装 bargroup,片段覆盖范围、重叠关系和主要峰谷特征均与原图一致。

思路:显式读取 B3:E662,修复上次因空白 A 列被自动省略而造成的列下标越界问题。将三条单分子条形码及共识曲线整理成长表,保留共同的行位置索引和缺失区间,以维持横向对齐。采用固定纵向偏移、蓝色单分子曲线和黑色共识曲线复现原图,隐藏坐标数值刻度;纵向偏移仅用于展示,不代表额外测量值。

数据:使用 41467_2026_78211_MOESM4_ESM.xlsx 的 Fig 1c 工作表,B–D 列分别为 Barcode 1–3,E 列为 Consensus bargroup。前两行为标题及列名,数据从第 3 行开始;NaN 表示未覆盖位置,横轴采用数据行的位置索引。

R 代码
下载 .R
# 1. 加载包:读取 Excel,并用长表绘制多条对齐曲线
library(readxl)
library(dplyr)
library(tidyr)
library(ggplot2)

# 2. 读取数据:明确指定 B:E,避免空的 A 列被自动省略后列号错位
raw <- read_excel(
  "input/41467_2026_78211_MOESM4_ESM.xlsx",
  sheet = "Fig 1c", range = "B3:E662",
  col_names = c("Barcode 1", "Barcode 2", "Barcode 3", "Consensus bargroup"),
  col_types = rep("numeric", 4), na = c("", "NaN")
)

# 3. 整理数据:行号代表共同的位置,缺失值表示分子未覆盖
# 不能先删除缺失值再编号,否则各条曲线将失去横向对齐关系
dat <- raw %>% mutate(position = row_number())
long <- dat %>%
  pivot_longer(-position, names_to = "trace", values_to = "intensity")
stopifnot(any(is.finite(long$intensity)))

# 用固定纵向偏移分开展示;不改变原始曲线的峰谷形状
# 原图从下到上为共识、Barcode 1、Barcode 2、Barcode 3
signal_range <- range(long$intensity, finite = TRUE)
spacing <- diff(signal_range) * 0.72
if (!is.finite(spacing) || spacing == 0) spacing <- 1
offsets <- c("Consensus bargroup" = 0, "Barcode 1" = spacing,
             "Barcode 2" = 2 * spacing, "Barcode 3" = 3 * spacing)
long <- long %>%
  mutate(y = intensity + unname(offsets[trace]),
         type = if_else(trace == "Consensus bargroup", "Consensus", "Barcode")) %>%
  group_by(trace) %>%
  arrange(position, .by_group = TRUE) %>%
  # 按缺失区间分段,防止折线跨过未覆盖的位置
  mutate(segment = cumsum(!is.finite(intensity))) %>%
  ungroup() %>%
  filter(is.finite(intensity))

# 4. 统计检验:本图展示组装曲线,不涉及组间假设检验
# 直接使用源数据中的共识曲线,不重新估计 DOGMA 组装结果

# 5. 作图:细蓝线表示单分子条形码,黑线表示共识 bargroup
p <- ggplot(long, aes(position, y,
                      group = interaction(trace, segment),
                      colour = type, linewidth = type)) +
  geom_line(lineend = "round") +
  scale_colour_manual(values = c(Barcode = "#37829A", Consensus = "black")) +
  scale_linewidth_manual(values = c(Barcode = 0.28, Consensus = 0.55)) +
  scale_x_continuous(expand = expansion(mult = c(0.045, 0.025))) +
  scale_y_continuous(expand = expansion(mult = c(0.13, 0.025))) +
  labs(x = NULL, y = NULL, tag = "c") +
  theme_classic(base_size = 14) +
  theme(
    legend.position = "none",
    axis.text = element_blank(),
    axis.ticks = element_blank(),
    axis.line = element_line(colour = "black", linewidth = 0.9),
    plot.tag = element_text(face = "bold", size = 24),
    plot.tag.position = c(0.015, 0.99),
    plot.margin = margin(22, 10, 8, 8)
  )

# 6. 保存:只输出子图 c,宽高接近原图比例
ggsave("output.png", p, width = 8, height = 5, dpi = 200)

输入数据:41467_2026_78211_MOESM4_ESM.xlsx41467_2026_78211_MOESM4_ESM.xlsx,下载后放进 input/ 文件夹再运行。

用到的包:readxl、dplyr、tidyr、ggplot2

运行环境(sessionInfo)
R version 4.6.1 (2026-06-24)
Platform: x86_64-pc-linux-gnu
Running under: Ubuntu 24.04.4 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.12.0 
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0  LAPACK version 3.12.0

locale:
 [1] LC_CTYPE=C.UTF-8       LC_NUMERIC=C           LC_TIME=C.UTF-8        LC_COLLATE=C.UTF-8     LC_MONETARY=C.UTF-8   
 [6] LC_MESSAGES=C.UTF-8    LC_PAPER=C.UTF-8       LC_NAME=C              LC_ADDRESS=C           LC_TELEPHONE=C        
[11] LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C   

time zone: Etc/UTC
tzcode source: system (glibc)

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] ggplot2_4.0.3  tidyr_1.3.2    dplyr_1.2.1    readxl_1.5.0.1

loaded via a namespace (and not attached):
 [1] vctrs_0.7.3        cli_3.6.6          rlang_1.3.0        purrr_1.2.2        generics_0.1.4     textshaping_1.0.5 
 [7] S7_0.2.2           labeling_0.4.3     glue_1.8.1         ragg_1.5.2         scales_1.4.0       grid_4.6.1        
[13] cellranger_1.1.0   tibble_3.3.1       lifecycle_1.0.5    compiler_4.6.1     rematch_2.0.0      RColorBrewer_1.1-3
[19] pkgconfig_2.0.3    systemfonts_1.3.2  farver_2.1.2       R6_2.6.1           tidyselect_1.2.1   pillar_1.11.1     
[25] magrittr_2.0.5     tools_4.6.1        withr_3.0.3        gtable_0.3.6      
R 复现 · Fig. 1e折线图对比得分 83
Fig. 1e 的 R 复现图

结论:复现图基本还原了两条染色体尺度曲线高度吻合的主要结论,但端点伪影、端部标记缺失和局部曲线偏差影响了忠实度。

思路:从共享工作表的第三行识别染色体列,并保留原始数据行作为横坐标。上次直接默认使用染色体 I 缺少依据,这次以原图最高峰约位于三分之一处为线索筛选候选,同时明确这只是近似选择,并未确认原图对应染色体。参考曲线先去除缓慢基线,再分别标准化,以灰、黑折线叠加显示;该处理不等同于论文的完整处理流程。由于没有结构差异区段坐标,不人为添加左右蓝段或黄色区段,因此结果是带限制说明的近似复现,而非精确还原。

数据:使用 41467_2026_78211_MOESM4_ESM.xlsx 的 Fig 5a and 1e 工作表,前三行为标题与表头,第四行起为数值。B–R 列是各染色体组装波形,T–AI 列是参考波形;按第三行名称配对,位置单位仅为采样点。表中未提供 Fig. 1e 的明确染色体身份、物理坐标及蓝黄区段注释。

与原图的差别:
  • 复现图灰色曲线在左右端出现明显的垂直下坠,原图没有这些异常端点。
  • 原图两端的蓝色短线段在复现图中缺失,未保留端部区段的区分标记。
  • 两条曲线的主要峰谷位置总体相符,但部分局部峰高、谷深及黑灰曲线的偏离程度与原图存在差异。
R 代码
下载 .R
# 1. 加载包:Excel 读取与折线图绘制
library(readxl)
library(ggplot2)

# 2. 读取数据:保留前三行,手动识别组装和参考列
raw <- read_excel("input/41467_2026_78211_MOESM4_ESM.xlsx",
                  sheet = "Fig 5a and 1e", col_names = FALSE,
                  col_types = "text")
headers <- trimws(as.character(unlist(raw[3, ], use.names = FALSE)))
assembly_cols <- which(grepl("^S[.] cerevisiae", headers))
reference_cols <- which(grepl("^>.*cerevisiae", headers))
clean_name <- function(x) {
  trimws(gsub("\\s+", " ", sub("^>\\s*", "", x)))
}
get_values <- function(j) {
  x <- suppressWarnings(as.numeric(unlist(raw[4:nrow(raw), j],
                                         use.names = FALSE)))
  x[!is.finite(x)] <- NA_real_
  x
}
z_score <- function(x) {
  s <- sd(x, na.rm = TRUE)
  if (!is.finite(s) || s == 0) return(rep(NA_real_, length(x)))
  (x - mean(x, na.rm = TRUE)) / s
}

# 3. 整理数据:原图未注明染色体,不能继续默认使用 I
# 用原图最显著的形状线索筛选候选:最高峰约在全长的三分之一处
# 这是可复核的近似选图规则,不是论文提供的染色体身份注释
candidates <- lapply(assembly_cols, function(j) {
  x <- get_values(j)
  ok <- which(is.finite(x))
  if (length(ok) < 20) return(NULL)
  span <- range(ok)
  peak_fraction <- (which.max(replace(x, is.na(x), -Inf)) - span[1]) /
    diff(span)
  data.frame(column = j, name = headers[j],
             peak_fraction = peak_fraction,
             distance = abs(peak_fraction - 0.33))
})
candidates <- do.call(rbind, candidates)
if (is.null(candidates) || nrow(candidates) == 0) {
  stop("没有找到可绘制的组装曲线。")
}
candidates <- candidates[order(candidates$distance), ]
selected <- candidates[1, ]
a <- get_values(selected$column)
# XII 的左右半段不能在未知拼接坐标下擅自拼接
ref_name <- sub(" \\(.*\\)$", "", selected$name)
rj <- reference_cols[clean_name(headers[reference_cols]) == ref_name]
if (length(rj) != 1) stop("无法唯一匹配参考染色体。")
r <- get_values(rj)
message("形状规则筛选的候选染色体:", selected$name,
        ";这不是已确认的原图染色体身份。")

# 参考是原始理论强度,不能直接与已标准化的组装叠加
# 用低自由度平滑样条估计缓慢变化的基线;这是近似预处理
# 不移动、拉伸或重采样横坐标,也不针对峰位优化对齐
remove_trend <- function(x) {
  ok <- which(is.finite(x))
  if (length(ok) < 20) stop("参考有效数值过少。")
  trend <- predict(smooth.spline(ok, x[ok], df = 6), ok)$y
  y <- rep(NA_real_, length(x))
  y[ok] <- x[ok] - trend
  z_score(y)
}
ay <- z_score(a)
ry <- remove_trend(r)
# 限制到组装的实际位置范围,避免空白尾部占据大部分画布
support <- range(which(is.finite(ay)))
pos <- seq.int(support[1], support[2])
make_curve <- function(y, label) {
  d <- data.frame(position = pos, intensity = y[pos], series = label)
  d$segment <- cumsum(!is.finite(d$intensity))
  d[is.finite(d$intensity), ]
}
dat <- rbind(make_curve(ry, "Reference"),
             make_curve(ay, "Consensus assembly"))
dat$series <- factor(dat$series,
                     levels = c("Reference", "Consensus assembly"))

# 4. 统计检验:这是波形比较图,不进行显著性检验
# 黄色/蓝色代表序列存在性差异,不能根据波形残差或端点直接判定
# 数据表没有这些区段的坐标,因此不伪造彩色结构变异标注

# 5. 作图:参考灰线在下,共识黑线在上,保留原图简洁轴线
p <- ggplot(dat, aes(position, intensity, colour = series,
                     group = interaction(series, segment))) +
  geom_line(linewidth = 0.9, lineend = "round") +
  scale_colour_manual(values = c("Reference" = "#999999",
                                 "Consensus assembly" = "black")) +
  scale_x_continuous(expand = expansion(mult = c(0.12, 0.12))) +
  scale_y_continuous(expand = expansion(mult = c(0.08, 0.08))) +
  labs(title = "e", x = NULL, y = NULL,
       caption = "Approximate reconstruction; chromosome identity and variant intervals unconfirmed") +
  theme_classic(base_size = 11) +
  theme(axis.text = element_blank(), axis.ticks = element_blank(),
        axis.line = element_line(colour = "black", linewidth = 0.8),
        legend.position = "none",
        plot.title = element_text(face = "bold", size = 20),
        plot.caption = element_text(size = 8, colour = "grey40", hjust = 0),
        plot.margin = margin(5, 10, 5, 5))

# 6. 保存:仅生成指定文件;宽高采用环境允许的最扁横向比例
# 原子图比 10:4 更扁,受宽高限制无法完全保持其纵横比
 ggsave("output.png", p, width = 10, height = 4, dpi = 200)

输入数据:41467_2026_78211_MOESM4_ESM.xlsx41467_2026_78211_MOESM4_ESM.xlsx,下载后放进 input/ 文件夹再运行。

用到的包:readxl、ggplot2

运行环境(sessionInfo)
R version 4.6.1 (2026-06-24)
Platform: x86_64-pc-linux-gnu
Running under: Ubuntu 24.04.4 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.12.0 
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0  LAPACK version 3.12.0

locale:
 [1] LC_CTYPE=C.UTF-8       LC_NUMERIC=C           LC_TIME=C.UTF-8        LC_COLLATE=C.UTF-8     LC_MONETARY=C.UTF-8   
 [6] LC_MESSAGES=C.UTF-8    LC_PAPER=C.UTF-8       LC_NAME=C              LC_ADDRESS=C           LC_TELEPHONE=C        
[11] LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C   

time zone: Etc/UTC
tzcode source: system (glibc)

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] ggplot2_4.0.3  readxl_1.5.0.1

loaded via a namespace (and not attached):
 [1] labeling_0.4.3     RColorBrewer_1.1-3 R6_2.6.1           tidyselect_1.2.1   cellranger_1.1.0   farver_2.1.2      
 [7] magrittr_2.0.5     gtable_0.3.6       glue_1.8.1         tibble_3.3.1       pkgconfig_2.0.3    dplyr_1.2.1       
[13] generics_0.1.4     lifecycle_1.0.5    cli_3.6.6          S7_0.2.2           scales_1.4.0       grid_4.6.1        
[19] vctrs_0.7.3        textshaping_1.0.5  withr_3.0.3        systemfonts_1.3.2  compiler_4.6.1     tools_4.6.1       
[25] ragg_1.5.2         pillar_1.11.1      rlang_1.3.0       
Fig. 2:该图展示全部光学条形码在两种酵母参考基因组上的比对位置和覆盖深度,同时区分正确物种与错误物种的匹配。不同基因组区域的覆盖深度不均一,右侧插图展示了各物种最富集位点的光学信号。
Fig. 2 该图展示全部光学条形码在两种酵母参考基因组上的比对位置和覆盖深度,同时区分正确物种与错误物种的匹配。不同基因组区域的覆盖深度不均一,右侧插图展示了各物种最富集位点的光学信号。

与参考基因组的比对。将所有条形码(N = 1653)比对至 a S. cerevisiae BY4742 和 b S. pombe 972h- 的参考基因组,染色体以罗马数字表示。与正确物种的匹配以蓝色表示,与错误物种的匹配以黄色表示。理论光学图谱以灰色显示。黑线表示覆盖深度。插图突出显示每个生物体中最富集的基因组位点。本图各绘图所依据的源数据和源代码可在 Zenbodo 获取。

图片来自 Nat Commun(Leal-Garza LM, et al.),doi:10.1038/s41467-026-78211-7,按 CC BY 4.0 许可原样转载。

a基因组轨道图
条形码在酿酒酵母参考基因组上的比对可直接复现

横坐标为基因组位置(kbp),纵坐标为计数,罗马数字 I–XVI 标示染色体,虚线分隔染色体。蓝色和黄色条段分别代表正确物种和错误物种的匹配,黑线表示覆盖深度,灰色为理论光学图谱;黑线峰值提示富集区域,右侧插图展示最富集位点的信号。

补充文件清单提供了 Source Data 表格,可用于复现该比对轨迹与覆盖深度统计图。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

b基因组轨道图
条形码在裂殖酵母参考基因组上的比对可直接复现

横坐标为基因组位置(kbp),纵坐标为计数,罗马数字 I–III 标示染色体,虚线分隔染色体。蓝色和黄色条段分别代表正确物种和错误物种的匹配,灰色为理论光学图谱,黑线为覆盖深度;II 染色体起始附近出现最高峰,箭头指向对应的富集位点信号插图。

补充文件清单提供了 Source Data 表格,可用于复现该比对轨迹与覆盖深度统计图。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

Fig. 3:该图展示稠密 OGM 条形码对整条酵母染色体的覆盖,并比较屏蔽重复区域前后的比对结果。图中还指出,着丝粒的长程低强度模式及染色体末端的强度梯度是解读条形码时需要考虑的特征。
Fig. 3 该图展示稠密 OGM 条形码对整条酵母染色体的覆盖,并比较屏蔽重复区域前后的比对结果。图中还指出,着丝粒的长程低强度模式及染色体末端的强度梯度是解读条形码时需要考虑的特征。

真核生物基因组稠密 OGM 组装的注意事项。a 在 S. cerevisiae 中跨越整条参考染色体(灰色)的代表性条形码(彩色)。相同的部分重复条形码(彩色)在屏蔽重复区域之前(b.i)和之后(b.ii)与参考基因组(灰色)比对的示例。两个子图中相对应的条形码采用相同颜色。每次比对的共识条形码以黑色显示,以供比较。c 三条 S. pombe 染色体的理论条形码(灰色)及其平滑后的趋势(黑色)。橙色框标记着丝粒,显示保守的长程低强度模式;蓝色框表示具有强度分布梯度的区域,这是由朝向染色体末端延伸的 GC 含量梯度所致。源数据以 Source Data 文件提供。

图片来自 Nat Commun(Leal-Garza LM, et al.),doi:10.1038/s41467-026-78211-7,按 CC BY 4.0 许可原样转载。

a折线图
跨越整条酿酒酵母染色体的条形码可直接复现

横向表示沿染色体的位置,曲线起伏表示条形码强度,图中未标注坐标数值。I、V、X 分别对应不同染色体;比较彩色条形码与灰色参考曲线的峰谷位置,可观察整条染色体范围内的匹配情况。

图注明确提供本图的 Source Data,清单中的同名数据工作簿可用于重绘条形码曲线。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

b.i折线图
屏蔽重复区域前的条形码比对可直接复现

彩色曲线为部分重复的条形码,灰色为参考基因组条形码,黑色为各次比对的共识条形码,虚线分隔不同的比对示例。重点比较重复起伏区域及不同条形码的比对位置;颜色与 b.ii 中的对应条形码一致。

图注明确提供本图的 Source Data,清单中有对应的源数据工作簿用于重绘比对曲线。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

b.ii折线图
屏蔽重复区域后的条形码比对可直接复现

彩色曲线对应 b.i 中相同颜色的条形码,灰色曲线为参考,黑色曲线为比对共识。横向比较各曲线峰谷的位置,并与 b.i 对照,可观察屏蔽重复区域后的比对结果。

图注明确提供本图的 Source Data,清单中有对应的源数据工作簿用于重绘比对曲线。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

c折线图
裂殖酵母染色体的长程强度特征可直接复现

I、II、III 表示三条 S. pombe 染色体,灰色为理论条形码,黑色为平滑趋势,横向表示沿染色体的位置。橙色框突出着丝粒处的低强度模式,蓝色框突出染色体末端附近的强度梯度。

图注明确提供本图的 Source Data,清单中的源数据工作簿可用于重绘理论条形码及趋势曲线。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

Fig. 4:本图展示重复区域屏蔽前后的条码组组装示例,以及通过或未通过信噪比标准的条码组特征。组装后的共识条码可进一步与参考染色体上的理论条码进行比对。
Fig. 4 本图展示重复区域屏蔽前后的条码组组装示例,以及通过或未通过信噪比标准的条码组特征。组装后的共识条码可进一步与参考染色体上的理论条码进行比对。

条码组的组装。示例条码组:a.i 未屏蔽重复区域时组装,a.ii 屏蔽重复区域后组装。组成条码以彩色显示,得到的条码组共识以黑色显示。请注意,重复区域屏蔽过程使这些示例中的条码组从不同的初始条件开始组装,因此不包含相同的组成条码。b 展示不同信噪比(SNR)特征的条码组示例。b.i 未通过 SNR 标准的条码组(SNR = 0.9),b.ii 通过 SNR 标准的条码组(SNR = 1.4)。c 组装后的条码组与参考基因组比对的示例。由多个条码成员(蓝色)构建的共识条码组(黑色),在组装后比对至染色体 I、I 和 II(从上到下,均为 S. pombe)上理论参考条码(灰色)的最佳匹配区域。源数据以 Source Data 文件提供。

图片来自 Nat Commun(Leal-Garza LM, et al.),doi:10.1038/s41467-026-78211-7,按 CC BY 4.0 许可原样转载。

a折线图
重复区域屏蔽前后的条码组组装可直接复现

a.i 为未屏蔽重复区域的示例,a.ii 为屏蔽后的示例;彩色曲线表示组成条码,黑色曲线表示条码组共识,上方错位排列、下方叠加展示。图中未标明坐标刻度;比较成员曲线与共识曲线的形态时,应注意两例由不同初始条件组装,成员条码并不相同。

图注明确指出提供源数据,清单中的 Source Data 表格可用于重绘条码及共识曲线。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

b折线图
不同信噪比条码组的对比可直接复现

彩色曲线表示组成条码,黑色曲线表示共识,上方分开展示成员,下方叠加比较。b.i 的 SNR = 0.9,未通过 SNR 标准;b.ii 的 SNR = 1.4,通过该标准,图中未标明坐标刻度。

图注明确提供 Source Data,清单中对应的表格数据可用于重绘两组条码信号曲线。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

c折线图
共识条码组与参考染色体比对可直接复现

横轴为染色体位置(kbp),三个示例从上到下分别对应 S. pombe 的染色体 I、I 和 II;纵向错开的蓝色曲线为成员条码,黑色为共识,灰色为理论参考条码。观察黑色与灰色曲线在相同位置的峰谷是否吻合,可了解组装后条码组与最佳匹配参考区域的对应情况。

图注说明提供源数据,清单中的 Source Data 表格可用于重绘成员、共识及参考条码的位置曲线。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

Fig. 5:该图展示两种酵母的染色体级组装与参考序列的整体一致性,同时标出相对于参考序列新增的延伸区域和组装未覆盖的区域。
Fig. 5 该图展示两种酵母的染色体级组装与参考序列的整体一致性,同时标出相对于参考序列新增的延伸区域和组装未覆盖的区域。

全基因组组装。a 所有组装的 S. cerevisiae 染色体(黑色)与参考序列(灰色)的比对。b 所有组装的 S. pombe 染色体(黑色)与参考序列(灰色)的比对。相对于参考序列的染色体延伸以蓝色突出显示,组装未覆盖的区域以黄色突出显示。a、b 的 x 轴采用不同的尺度。源数据以 Source Data 文件形式提供。

图片来自 Nat Commun(Leal-Garza LM, et al.),doi:10.1038/s41467-026-78211-7,按 CC BY 4.0 许可原样转载。

a基因组轨道图
酿酒酵母全染色体组装与参考比对可直接复现

横轴为染色体位置(kbp),各行对应 I–XVI 号染色体;黑色曲线为组装结果,灰色曲线为参考。观察两条曲线的重合程度判断比对一致性,蓝色表示相对于参考的延伸,黄色表示组装未覆盖区域。

图注明确提供源数据,补充清单中的 Source Data Excel 文件可用于重绘染色体比对曲线。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

b基因组轨道图
裂殖酵母全染色体组装与参考比对可直接复现

横轴为染色体位置(kbp),各行对应 I–III 号染色体;黑色与灰色曲线分别表示组装结果和参考。蓝色标出相对于参考的延伸,黄色表示组装未覆盖区域;注意本图横轴尺度与 a 不同。

图注明确提供源数据,补充清单中的 Source Data Excel 文件可用于重绘染色体比对曲线。(数据:41467_2026_78211_MOESM4_ESM.xlsx)

研究问题

如何将原用于细菌基因组的DOGMA扩展至结构更复杂的真核基因组,并避免重复区域主导匹配而造成非相邻重复位点塌缩?

数据与样本

实验使用酿酒酵母BY4742和裂殖酵母NS112(leu1-32 his3-D1 ura4-D18 ade6-M210),通过纳米流控拉伸与荧光显微成像采集单分子DNA光学数据。参考序列包括酿酒酵母S288C R64(GCA_000146045.2)、裂殖酵母972h-(GCA_000002945.3)及酿酒酵母S288C长读长组装(GCA_002057635.1)。

分析流程

  1. 1制备与标记DNA:提取2种酵母的基因组DNA,通过YOYO-1与netropsin的竞争性结合产生密集荧光标记,并加入噬菌体λ DNA作为内部长度参照。
  2. 2单分子成像:在纳米通道中拉伸DNA,用荧光显微镜采集分子视频。
  3. 3生成与质控条形码:用lldev’将视频转换为时空图,校正热涨落、合并跨视野分子并剔除成像期间长度显著变化的分子,经时间平均生成一维强度条形码。
  4. 4识别并遮蔽重复区域:用Repetitive Finder结合自相关、傅里叶变换和滚动窗口相关分析,将至少5个重复单元且平均相关性>0.4的区域标记为重复区域。
  5. 5分阶段组装:分别优化不同条形码类别的参数,先组装非重复与部分重复且已遮蔽的条形码,再以部分重复组装提供的上下文为锚点纳入重复条形码,最后合并各类共识组装。
  6. 6参考辅助精修与比较:用HCA生成理论参考条形码并开展局部比对,依据参考定位识别未解决的连接,再通过组装间局部相似性合并,形成染色体尺度组装并比较局部结构差异。

关键方法与工具

DOGMA
分阶段组装光学条形码
competitive binding (CB)
生成密集DNA荧光标记
lldev’
从视频生成条形码
HCA
生成参考条形码并比对
Repetitive Finder
检测并遮蔽重复区域
Pearson correlation coefficient
评估条形码匹配相似性
Fourier transform
验证重复周期
findchangepts
分割连续重复区域

设计思路

选择基因组紧凑但结构丰富的2种酵母检验流程向真核基因组的扩展能力。先遮蔽重复区域、依靠非重复上下文建立组装,再纳入重复信号,以减少重复序列主导匹配造成的错误分组。初始从头组装后再用参考定位辅助解决连接,因此最终染色体尺度结果包含参考辅助精修。

主要发现

  • 扩展后的DOGMA在2种酵母中生成了覆盖基因组的染色体尺度光学图谱组装。
  • 显式处理真核基因组结构特征后,组装避免了非相邻重复位点的塌缩。
  • 组装与相应参考基因组存在局部差异,包括扩增的重复阵列(> 500 kbp)。

可借鉴之处

  • 处理重复信号时,可借鉴“先遮蔽、用非重复上下文定位、再恢复纳入”的分阶段策略,避免高相似重复区域主导初始分组。
  • 对重复、部分重复和非重复条形码分别优化参数,且按实验设置重新参数化,可将成像条件差异纳入分析流程。
  • 将初始从头组装与参考辅助精修明确分开,有助于区分组装自身的证据和参考定位对最终连接的贡献。

数据与代码

原始显微图像、预处理及处理后的条形码和.mat组装结果存于Zenodo(https://doi.org/10.5281/zenodo.2150729541),自定义MATLAB代码见https://github.com/dnadevcode/yeast_denovoassembly及同一Zenodo记录,参考基因组编号为GCA_000146045.2、GCA_000002945.3和GCA_002057635.1。

表格类补充数据(复现用得上)
其他补充文件(6 个)

局限

  • 实验验证对象为2种酵母,向人类基因组及疾病诊断的应用仍属展望。
  • 最终染色体尺度组装经过参考辅助精修,不能视为全程不依赖参考的组装。

摘要(中文翻译)

大型重复元件和复杂的染色体组织结构仍然给真核基因组的准确组装带来挑战。光学基因组图谱(OGM)通过对单个DNA分子成像,提供长程基因组信息。大多数OGM方案依赖稀疏的酶促标记,这限制了标记不足或结构复杂区域的分辨率;相比之下,密集标记策略产生连续的荧光强度谱,为基因组结构提供互补的表征方式。在此,我们将此前用于细菌基因组的Dense Optical Genome Mapping Assembly(DOGMA)流程扩展至真核基因组,以基因组紧凑但结构丰富的酿酒酵母Saccharomyces cerevisiae和裂殖酵母Schizosaccharomyces pombe为例。我们采用基于竞争性结合(CB)的密集OGM方案,沿单个DNA分子产生反映局部AT/GC含量的连续强度谱。通过明确考虑真核基因组固有且使组装复杂化的结构特征,DOGMA重建全基因组光学图谱,同时避免非相邻重复位点的塌缩。所得染色体尺度组装覆盖这2种酵母的基因组,并显示出相对于对应参考基因组的局部差异,包括扩增的重复阵列(> 500 kbp)。这些结果为将密集OGM可扩展地应用于日益复杂的基因组建立了综合框架,其中包括人类基因组;我们预期,该方法可高效用于疾病诊断。

英文原文摘要

Large repetitive elements and complex chromosomal organization continue to challenge accurate assembly of eukaryotic genomes. Optical genome mapping (OGM) provides long-range genomic information by imaging individual DNA molecules. While most OGM protocols rely on sparse enzymatic labeling that restricts resolution in poorly labeled or structurally complex regions, dense labeling strategies generate continuous fluorescence intensity profiles that offer a complementary representation of genome structure. Here we extend our Dense Optical Genome Mapping Assembly (DOGMA) pipeline, previously used for bacterial genomes, to eukaryotic genomes, exemplified by the yeasts Saccharomyces cerevisiae and Schizosaccharomyces pombe, with compact, yet structurally rich genomes. We use a competitive binding (CB)-based dense OGM protocol that produces continuous intensity profiles, reflecting local AT/GC-content, along individual DNA molecules. By explicitly accounting for structural features inherent to eukaryotic genomes that complicate assembly, DOGMA reconstructs genome-wide optical maps while avoiding collapse of non-adjacent repetitive loci. The resulting chromosome-scale assemblies span the genomes of both yeasts and show local differences relative to the corresponding reference genomes, including expanded repetitive arrays ( > 500 kbp). These results establish a comprehensive framework for scalable dense OGM to increasingly complex genomes, including the human genome, where we foresee that it can be efficiently used for disease diagnosis.

摘要来自 PubMed。翻译与解读由模型根据摘要和开放获取全文的方法部分生成,可能有误,不构成诊疗建议;数据以原文为准,版权归原出版方所有。