В этой главе рассказывается о том, как строить последовательности. Прежде чем перейти к этой теме, давайте разберемся с основами черчения.
Заговор
Matplotlib — это библиотека графиков Python, которая производит качественные рисунки в различных форматах. Мы можем создавать различные типы графиков, таких как линейные диаграммы, гистограммы, гистограммы, круговые диаграммы, точечные диаграммы и т. Д.
pyLab — это модуль, который принадлежит matplotlib, который объединяет числовой модуль numpy с графическим модулем построения графиков pyplot. Biopython использует модуль pylab для построения последовательностей. Для этого нам нужно импортировать приведенный ниже код —
import pylab
Перед импортом нам нужно установить пакет matplotlib с помощью команды pip с командой, приведенной ниже —
pip install matplotlib
Образец входного файла
Создайте образец файла с именем plot.fasta в вашем каталоге Biopython и добавьте следующие изменения:
>seq0 FQTWEEFSRAAEKLYLADPMKVRVVLKYRHVDGNLCIKVTDDLVCLVYRTDQAQDVKKIEKF >seq1 KYRTWEEFTRAAEKLYQADPMKVRVVLKYRHCDGNLCIKVTDDVVCLLYRTDQAQDVKKIEKFHSQLMRLME >seq2 EEYQTWEEFARAAEKLYLTDPMKVRVVLKYRHCDGNLCMKVTDDAVCLQYKTDQAQDVKKVEKLHGK >seq3 MYQVWEEFSRAVEKLYLTDPMKVRVVLKYRHCDGNLCIKVTDNSVCLQYKTDQAQDV >seq4 EEFSRAVEKLYLTDPMKVRVVLKYRHCDGNLCIKVTDNSVVSYEMRLFGVQKDNFALEHSLL >seq5 SWEEFAKAAEVLYLEDPMKCRMCTKYRHVDHKLVVKLTDNHTVLKYVTDMAQDVKKIEKLTTLLMR >seq6 FTNWEEFAKAAERLHSANPEKCRFVTKYNHTKGELVLKLTDDVVCLQYSTNQLQDVKKLEKLSSTLLRSI >seq7 SWEEFVERSVQLFRGDPNATRYVMKYRHCEGKLVLKVTDDRECLKFKTDQAQDAKKMEKLNNIFF >seq8 SWDEFVDRSVQLFRADPESTRYVMKYRHCDGKLVLKVTDNKECLKFKTDQAQEAKKMEKLNNIFFTLM >seq9 KNWEDFEIAAENMYMANPQNCRYTMKYVHSKGHILLKMSDNVKCVQYRAENMPDLKK >seq10 FDSWDEFVSKSVELFRNHPDTTRYVVKYRHCEGKLVLKVTDNHECLKFKTDQAQDAKKMEK
Линия Участок
Теперь давайте создадим простой линейный график для вышеуказанного файла fasta.
Шаг 1 — Импортируйте модуль SeqIO для чтения файла fasta.
>>> from Bio import SeqIO
Шаг 2 — Разбор входного файла.
>>> records = [len(rec) for rec in SeqIO.parse("plot.fasta", "fasta")] >>> len(records) 11 >>> max(records) 72 >>> min(records) 57
Шаг 3 — Давайте импортируем модуль pylab.
>>> import pylab
Шаг 4 — Сконфигурируйте линейный график, назначив метки оси x и y.
>>> pylab.xlabel("sequence length") Text(0.5, 0, 'sequence length') >>> pylab.ylabel("count") Text(0, 0.5, 'count') >>>
Шаг 5 — Настройте линейный график, настроив отображение сетки.
>>> pylab.grid()
Шаг 6 — Нарисуйте простую линейную диаграмму, вызвав метод plot и предоставив записи в качестве входных данных.
>>> pylab.plot(records) [<matplotlib.lines.Line2D object at 0x10b6869d 0>]
Шаг 7 — Наконец, сохраните диаграмму, используя приведенную ниже команду.
>>> pylab.savefig("lines.png")
Результат
После выполнения вышеуказанной команды вы можете увидеть следующее изображение, сохраненное в вашем каталоге Biopython.
Гистограмма
Гистограмма используется для непрерывных данных, где ячейки представляют диапазоны данных. Гистограмма рисования такая же, как линейная диаграмма, за исключением pylab.plot. Вместо этого вызовите метод Hist модуля pylab с записями и некоторым значением custum для bin (5). Полное кодирование выглядит следующим образом:
Шаг 1 — Импортируйте модуль SeqIO для чтения файла fasta.
>>> from Bio import SeqIO
Шаг 2 — Разбор входного файла.
>>> records = [len(rec) for rec in SeqIO.parse("plot.fasta", "fasta")] >>> len(records) 11 >>> max(records) 72 >>> min(records) 57
Шаг 3 — Давайте импортируем модуль pylab.
>>> import pylab
Шаг 4 — Сконфигурируйте линейный график, назначив метки оси x и y.
>>> pylab.xlabel("sequence length") Text(0.5, 0, 'sequence length') >>> pylab.ylabel("count") Text(0, 0.5, 'count') >>>
Шаг 5 — Настройте линейный график, настроив отображение сетки.
>>> pylab.grid()
Шаг 6 — Нарисуйте простую линейную диаграмму, вызвав метод plot и предоставив записи в качестве входных данных.
>>> pylab.hist(records,bins=5) (array([2., 3., 1., 3., 2.]), array([57., 60., 63., 66., 69., 72.]), <a list of 5 Patch objects>) >>>
Шаг 7 — Наконец, сохраните диаграмму, используя приведенную ниже команду.
>>> pylab.savefig("hist.png")
Результат
После выполнения вышеуказанной команды вы можете увидеть следующее изображение, сохраненное в вашем каталоге Biopython.
Процент GC в последовательности
Процент GC является одним из наиболее часто используемых аналитических данных для сравнения различных последовательностей. Мы можем сделать простую линейную диаграмму, используя GC Percentage из набора последовательностей, и сразу же сравнить ее. Здесь мы можем просто изменить данные с длины последовательности на процент GC. Полная кодировка приведена ниже —
Шаг 1 — Импортируйте модуль SeqIO для чтения файла fasta.
>>> from Bio import SeqIO
Шаг 2 — Разбор входного файла.
>>> from Bio.SeqUtils import GC >>> gc = sorted(GC(rec.seq) for rec in SeqIO.parse("plot.fasta", "fasta"))
Шаг 3 — Давайте импортируем модуль pylab.
>>> import pylab
Шаг 4 — Сконфигурируйте линейный график, назначив метки оси x и y.
>>> pylab.xlabel("Genes") Text(0.5, 0, 'Genes') >>> pylab.ylabel("GC Percentage") Text(0, 0.5, 'GC Percentage') >>>
Шаг 5 — Настройте линейный график, настроив отображение сетки.
>>> pylab.grid()
Шаг 6 — Нарисуйте простую линейную диаграмму, вызвав метод plot и предоставив записи в качестве входных данных.
>>> pylab.plot(gc) [<matplotlib.lines.Line2D object at 0x10b6869d 0>]
Шаг 7 — Наконец, сохраните диаграмму, используя приведенную ниже команду.
>>> pylab.savefig("gc.png")
Результат
После выполнения вышеуказанной команды вы можете увидеть следующее изображение, сохраненное в вашем каталоге Biopython.