本文通过 4 个兰花的基因组注释,主要利用 MCScanX 软件分析 NB-ARC 基因家族在不同物种间的共线性区段以及基因复制事件。步骤参考文献 Genome- Wide Analysis of the Nucleotide Binding Site Leucine-Rich Repeat Genes of Four Orchids Revealed Extremely Low Numbers of Disease Resistance Genes,Front. Genet.,08 January 2020。
MCScanX 通过 序列间的比对结果 及 序列的注释文件 来分析基因组中存在的共线性区段和基因复制事件。将分析的结果通过 TBtools 进行可视化展示。
参考链接:
DIAMOND 是 2015 年在 Nature Methods 上发布的一款 蛋白序列 比对软件,可以大批量、极高速的完成序列比对,并且操作简单。 DIAMOND 比对速度是 BLAST 的 100x-10000x,并且具有相似的精确度。这里使用 DIAMOND 进行蛋白组间的序列比对。
使用 makedb 建库
$ diamond makedb --in species1.fasta -d species1
$ diamond makedb --in Apostasia_shenzhenica.fasta -d Apostasia_shenzhenica
使用 blastp 进行蛋白组间的序列比对
diamond blastp -k3 -d species1 -q species2.fasta -o sp2sp1.blast
-k 指输出文件中仅包含每个查询序列(query)匹配到的 top N 个目标序列。
如 -k3 表示根据匹配得分 输出 每个查询序列匹配到的前 3 个目标序列。
以 Apostasia_shenzhenica 作为参考蛋白组(-d),将剩余 3 个物种的蛋白组序列作为查询序列(-q)进行比对,物种间蛋白组比对时间 约几秒钟 完成:
diamond blastp -k3 -d Apostasia_shenzhenica -q Apostasia_shenzhenica.fasta -o ApAp.blast(9.8s)
diamond blastp -k3 -d Apostasia_shenzhenica -q Dendrobium_catenatum.fasta -o DeAp.blast(9.7s)
diamond blastp -k3 -d Apostasia_shenzhenica -q Gastrodia_elata.fasta -o GaAp.blast(4.2s)
diamond blastp -k3 -d Apostasia_shenzhenica -q Phalaenopsis_equestris.fasta -o PhAp.blast(7.9s)
MCScanX 输入文件中的注释文件要求格式为 4 列,分别为 chr、gene、start、end,顺序不能乱且分隔符为 \t。在通过基因组的 gff 文件提取注释信息时需要注意的是:
参考链接:
$ MCScanX fileanme
MCScanX 会读取当前目录下 fileanme.gff、fileanme.blast 两个文件,分析数据中由 片段复制(segmentally duplicate)事件 导致的 共线性(collinearity) 和由 基因复制事件 导致的 串联重复(tandemly duplicate) 。在比对结果中,如果一对配对(alignment)序列在染色体上是相连的,MCScanX 认为两序列中一条序列是由另一条序列复制产生的,即存在 1 个基因复制事件;如果多对配对在染色体上成簇存在,MCScanX 认为多对序列中一组是由另一组复制产生的,即存在 1 个片段复制事件。
MCScanX 会产生 2 个输出文件和 1 个输出文件夹:
在对 Apostasia_shenzhenica 物种内进行共线性分析时,MCScanX 找到了 63 个共线性区段、478 个串联重复。同理在对 Gastrodia_elata、Dendrobium_catenatum、Phalaenopsis_equestris 进行物种内共线性分析时,MCScanX 分别找到了 3、12、12 个共线性区段和 415、10304、8781 个串联重复。MCScanX 发掘的共线性区段较少,可能原因是输入的基因组是 Scaffold 而非拼接好的染色体,大量 Scaffold 中仅包含1个基因,碎片化的 Scaffold 使区块分析变得困难。各物种 Scaffold 数量:Apostasia_shenzhenica = 610,Dendrobium_catenatum = 551,Phalaenopsis_equestris = 4363,Gastrodia_elata = 507。
通过脚本提取 MCScanX 结果中包含 NB-ARC 结构域的蛋白,结果如下:
NB-ARC | Apostasia_shenzhenica | Gastrodia_elata | Dendrobium_catenatum | Phalaenopsis_equestris |
---|---|---|---|---|
collinearity | 0 | 0 | 0 | 0 |
tandem | 2 | 0 | 38 | 10 |
4个物种内均无包含 NB-ARC 蛋白的基因组重复事件(segmentally duplicate),但是包含了一些串联重复事件,这与参考文献中结果一致。
$ MCScanX PhGaDe_Ap
这里以 Apostasia_shenzhenica 蛋白组作为参考,将 Gastrodia_elata、Dendrobium_catenatum、Phalaenopsis_equestris 蛋白组与Apostasia_shenzhenica 蛋白组的比对结果整合成一组文件(PhGaDe_Ap.blast、PhGaDe_Ap.gff)后进行共线性分析,寻找 4 个基因组间的共线性区段。因为共线性区段的存在是相互的,所以改变参考蛋白组(reference)对结果影响不大。MCScan 的运行总时间约为 3 分钟,挖掘出了 1572 个共线性区块。
通过脚本提取 MCScanX 结果中包含 NB-ARC 蛋白的共线性区块。实验发现了 PKA60334.1 蛋白所在的共线性区块在 Gastrodia_elata、Dendrobium_catenatum、Phalaenopsis_equestris 中也存在,PKA54312.1 蛋白所在的共线性区块在 Dendrobium_catenatum、Phalaenopsis_equestris中也存在。
PS:使用 MCScanX 中的 duplicate_gene_classifier 分析与各种复制事件相关的基因数量
$ duplicate_gene_classifier filename
$ duplicate_gene_classifier ApAp
duplicate_gene_classifier 的输入与MCScanX一致,读取当前目录下 fileanme.gff、fileanme.blast 作为输入,输出结果如下:
Type of dup | Code | Number |
---|---|---|
Singleton | 0 | 88907 |
Dispersed | 1 | 13573 |
Proximal | 2 | 463 |
Tandem | 3 | 847 |
WGD or segmental | 4 | 1055 |
其中 Singleton 表示单拷贝,Proximal 表示在相同染色体上相近但不想连的重复,Dispersed 表示除 Tandem、WGD、Proximal 以外的重复。
注意,duplicate_gene_classifier 输出的是复制事件相关的 基因数,而 MCScanX 输出的是 复制事件的数量。如 ApAp 中总共有 63 个共线性区段,其中包含 1055 个基因;有 478 个串联重复事件,其中包含 847 个基因。
TBtools 下载地址:
TBtools 功能详细介绍参见:
Linux 下载 Source code,解压后通过 Java 打开 TBtools。这里通过 TBtools -> Graphics -> Advanced Circos 绘制 PKA60334.1 蛋白所在的共线性区块。Advanced Circos 需要提供三个输入文件:
通过脚本根据共线性文件(fileanme.collinearity)和注释文件(fileanme.gff),提取出 TBtools 所需的输入文件。将文件输入给 TBtools:
PKA60334.1 的 Advanced Circos 输出结果如下。由于在比对的时候只比较了 Gastrodia_elata、Dendrobium_catenatum、Phalaenopsis_equestris 与 Apostasia_shenzhenica 间的关系,所以这里 Gastrodia_elata、Dendrobium_catenatum、Phalaenopsis_equestris 间没有连线。