Biopython - 基因组分析



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

基因组图

基因组图将遗传信息表示为图表。Biopython 使用 Bio.Graphics.GenomeDiagram 模块来表示 GenomeDiagram。GenomeDiagram 模块需要安装 ReportLab。

创建图表的步骤

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

  • 为要显示的每一组独立特征创建一个 FeatureSet,并将 Bio.SeqFeature 对象添加到其中。

  • 为要显示的每个图形创建一个 GraphSet,并将图形数据添加到其中。

  • 为图表上的每个轨道创建一个 Track,并将 GraphSet 和 FeatureSet 添加到所需的轨道中。

  • 创建一个 Diagram,并将 Tracks 添加到其中。

  • 告诉 Diagram 绘制图像。

  • 将图像写入文件。

让我们以一个输入 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")

染色体概述

DNA 分子包装成称为染色体的线状结构。每个染色体都由 DNA 组成,DNA 紧密缠绕在称为组蛋白的蛋白质周围多次,这些蛋白质支撑其结构。

当细胞不分裂时,染色体在细胞核中不可见——甚至在显微镜下也看不到。然而,构成染色体的 DNA 在细胞分裂过程中会变得更加紧密地包装,然后可以在显微镜下看到。

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

广告