Skip to main content

Create fancy (bokeh) gene locus plots from GenBank files

Project description

Gene Loci Comparison

Create fancy (bokeh) gene locus plots from GenBank files!

This repository extends the functionality of the excellent DnaFeaturesViewer

Setup

pip install git+https://github.com/MrTomRod/gene_loci_comparison.git

Examples

Bokeh

This library can also create interactive html/javascript-based plots. Open these files in your browser:

Single locus, specify colors

from gene_loci_comparison import Locus, Loci
import matplotlib
import matplotlib.pyplot as plt

matplotlib.rcParams['font.family'] = "PT Sans Narrow"

locus = Locus(gbk_file='/path/to/file.gbk', locus_tag='FAM3257_001019')

locus_to_color = dict(
    FAM3257_001014='#1271c3',
    FAM3257_001015='#3171c3',
    FAM3257_001016='#5d71c3',
    FAM3257_001017='#9371c3',
    FAM3257_001018='#b171c3',
    FAM3257_001019='#cb71c3',
    FAM3257_001020='#ea71c3',
    FAM3257_001021='#fd71c3',
    # FAM3257_001021='#fd71c3'  # last gene: white (default color)
)

locus.colorize(locus_to_color)

ax, _ = locus.plot(figure_width=12)

plt.show()

Multiple loci

from gene_loci_comparison import Loci
import matplotlib

matplotlib.rcParams['font.family'] = "PT Sans Narrow"

# Each locus is made from a gbk-file, a gene identifier and a title (optional)
loci_of_interest = [
    dict(gbk='/path/to/file1.gbk', gene='FAM3257_00934', title='title1'),
    dict(gbk='/path/to/file2.gbk', gene='FAM3257_000019', title='title2'),
    dict(gbk='/path/to/file3.gbk', gene='FAM3257_001020', title='title3'),
]

# Highlight selected genes
locus_to_color_dict = {locus['gene']: '#1984ff' for locus in loci_of_interest}

# Generate loci object
loci = Loci.generate(
    loci_of_interest,
    locus_to_color_dict=locus_to_color_dict
)

plot = loci.plot(auto_reverse=False)

plot.show()

Multiple loci, autoreversed

To automatically reverse loci based on the direction of the selected genes. Simply set auto_reverse to True.

Multiple loci, with GC content

Change plotting method from plot_multiple to plot_multiple_gc.

plot = loci.plot_gc(
    auto_reverse=True,
    window_bp=200
)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gene-loci-comparison-0.0.3.tar.gz (9.1 kB view details)

Uploaded Source

File details

Details for the file gene-loci-comparison-0.0.3.tar.gz.

File metadata

  • Download URL: gene-loci-comparison-0.0.3.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for gene-loci-comparison-0.0.3.tar.gz
Algorithm Hash digest
SHA256 53fc3c8c0f5c16f06ea15bc53daf7dc93592467a488a9ae6345b5c5e0d87803a
MD5 51cb593a729a8b3333dc274758d1926f
BLAKE2b-256 34a35b1d4181015fc75c62f144cf6afc003a361d34854f8cbb80f94d7b339f86

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page