Biopython 简明教程

Biopython - Genome Analysis

基因组是 DNA 的完整集合,包括其所有基因。基因组分析是指研究个体基因及其在遗传中的作用。

Genome Diagram

基因组图以图表的形式展示遗传信息。Biopython 使用 Bio.Graphics.GenomeDiagram 模块来展示 GenomeDiagram。GenomeDiagram 模块需要安装 ReportLab。

Steps for creating a diagram

创建图表的流程通常遵循以下简单模式:

  1. 为想要展示的每个单独的特性集创建一个 FeatureSet,并向它们添加 Bio.SeqFeature 对象。

  2. 为想要展示的每个图表创建一个 GraphSet,并向它们添加图表数据。

  3. 为图表中想要的每个轨道创建一个 Track,并向需要的轨道添加 GraphSets 和 FeatureSets。

  4. 创建一个 Diagram,并向其中添加 Track。

  5. 告诉 Diagram 绘制图像。

  6. 将图像写入文件。

让我们以输入 GenBank 文件为例:

https://raw.githubusercontent.com/biopython/biopython/master/Doc/examples/ls_orchid.gbk 并从 SeqRecord 对象中读取记录,然后最终绘制基因组图表。它在下面进行了说明:

我们首先需要导入所有模块,如下所示:

>>> from reportlab.lib import colors
>>> from reportlab.lib.units import cm
>>> from Bio.Graphics import GenomeDiagram

现在,导入 SeqIO 模块来读取数据:

>>> from Bio import SeqIO
record = SeqIO.read("example.gb", "genbank")

在这里,记录从 genbank 文件中读取序列。

现在,创建一个空的图表来添加轨道和特性集:

>>> diagram = GenomeDiagram.Diagram(
   "Yersinia pestis biovar Microtus plasmid pPCP1")
>>> track = diagram.new_track(1, name="Annotated Features")
>>> feature = track.new_set()

现在,我们可以使用下面定义的绿色到灰色的交替颜色应用颜色主题更改:

>>> for feature in record.features:
>>>    if feature.type != "gene":
>>>       continue
>>>    if len(feature) % 2 == 0:
>>>       color = colors.blue
>>>    else:
>>>       color = colors.red
>>>
>>>    feature.add_feature(feature, color=color, label=True)

现在您可以在屏幕上看到以下响应:

<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x105d3dc90>
<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x105d3dfd0>
<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x1007627d0>
<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x105d57290>
<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x105d57050>
<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x105d57390>
<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x105d57590>
<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x105d57410>
<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x105d57490>
<Bio.Graphics.GenomeDiagram._Feature.Feature object at 0x105d574d0>

让我们为上述输入记录绘制一张图表 -

>>> diagram.draw(
   format = "linear", orientation = "landscape", pagesize = 'A4',
   ... fragments = 4, start = 0, end = len(record))
>>> diagram.write("orchid.pdf", "PDF")
>>> diagram.write("orchid.eps", "EPS")
>>> diagram.write("orchid.svg", "SVG")
>>> diagram.write("orchid.png", "PNG")

执行上述命令后,您可以在 Biopython 目录中看到已保存的以下图像。

** Result **
genome.png
creating diagram

您还可以通过进行以下更改来以圆形格式绘制图像 -

>>> diagram.draw(
   format = "circular", circular = True, pagesize = (20*cm,20*cm),
   ... start = 0, end = len(record), circle_core = 0.7)
>>> diagram.write("circular.pdf", "PDF")

Chromosomes Overview

DNA 分子被包装成称为染色体的类线程结构。每条染色体都由 DNA 紧密盘绕在支持其结构的称为组蛋白的蛋白质周围多次组成。

当细胞没有分裂时,染色体在细胞核中不可见 - 即使在显微镜下也是如此。然而,构成染色体的 DNA 在细胞分裂期间会变得更加紧密地包装,然后在显微镜下可见。

在人类中,每个细胞通常包含 23 对染色体,总共 46 条。其中 22 对(称为常染色体)在男性和女性中看起来相同。第 23 对(性染色体)在男性和女性之间不同。女性有 X 染色体的两份拷贝,而男性有 X 和 Y 染色体各一份。