Skip to content

A Python library for pretty-printing DNA and protein sequences using a monospace font

License

Notifications You must be signed in to change notification settings

martijnvermaat/monoseq

Repository files navigation

monoseq

monoseq is a Python library for pretty-printing sequence strings using a monospace font. It also provides a simple command line interface.

Sequences are pretty-printed in the for DNA and proteins traditional way using blocks of letters where each line is prefixed with the sequence position. User-specified regions are highlighted using different formatting styles. The output format can be HTML or plaintext with optional styling using ANSI escape codes for use in a terminal.

>>> import monoseq
>>> sequence = 'MIMANQPLWLDSEVEMNHYQQSHIKSKSPYFPEDKHICWIKIFKAFGT' * 4
>>> print monoseq.pprint_sequence(sequence, mode='plaintext')
  1  MIMANQPLWL DSEVEMNHYQ QSHIKSKSPY FPEDKHICWI KIFKAFGTMI MANQPLWLDS
 61  EVEMNHYQQS HIKSKSPYFP EDKHICWIKI FKAFGTMIMA NQPLWLDSEV EMNHYQQSHI
121  KSKSPYFPED KHICWIKIFK AFGTMIMANQ PLWLDSEVEM NHYQQSHIKS KSPYFPEDKH
181  ICWIKIFKAF GT

This screenshot shows the use of ANSI escape codes:

Example of formatting with ANSI escape codes

Here is an example of monoseq used to output HTML, and this IPython Notebook shows how to pretty-print sequences in an IPython Notebook.

To install the latest release via PyPI using pip:

pip install monoseq

Documentation

The latest documentation with user guide and API reference is hosted at Read The Docs.

You can also compile the documentation directly from the source code by running make html from the doc/ subdirectory. This requires Sphinx to be installed.

Copyright

monoseq is licensed under the MIT License, see the LICENSE.rst file for details. See the AUTHORS.rst file for a list of authors.

About

A Python library for pretty-printing DNA and protein sequences using a monospace font

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages