Python Genome Viewer
Project description
Python Genome Viewer (PyGV)
PyGV, short for Python Genome Viewer, is a powerful and user-friendly Python package designed to empower researchers and genomics enthusiasts with the tools they need to create publication-ready, highly customizable genomic visualizations seamlessly integrated into their daily workflows.
Key Features and Advantages
- Everything in Python: PyGV allows you to effortlessly configure genomic tracks directly within Python code. Each track is represented as a Python class, making it easy to fine-tune track properties, layouts, and styles to suit your specific research needs. As PyGV is built on top of Matplotlib, you can further harness the familiar syntax used for Matplotlib, giving you the power to customize your genomic visualizations to the fullest extent.
- Flexible data filtering: Users can define what to plot by applying customized filters during signal reading. For example, when plotting alignments, users can use Python's lambda expressions to selectively display specific reads, such as the first read or reads mapped to the forward strand. This level of customization extends to genome annotations as well, allowing users to effortlessly select which features (e.g. transcripts) to display with just one line of code. This capability is useful when dealing with extensive genomic data, enabling researchers to focus on the specific elements relevant to their analyses without being overwhelmed by unnecessary details.
- Rich Genomic Data Support: PyGV offers support for a wide range of genomic data formats, allowing you to visualize genes, regulatory elements, sequencing alignments, genomic interactions, and other genomics features in the way that best serves your research. See a gallery of all supported tracks here.
- High-resolution Figures: PyGV is committed to producing high-quality figures. Our goal is to minimize the additional effort you might otherwise spend adjusting fonts, colors, and other details in software like Adobe Illustrator. With PyGV, you can create polished, high-quality figures directly from your genomic visualizations, saving you time and ensuring that your visualizations are ready to meet the different standards of publication.
- Reproducibility and Collaboration: With PyGV, creating and sharing reproducible genomic visualizations becomes a straightforward task, essential for research collaboration and documentation.
Get Started
Install PyGV with pip:
pip install GenomeViewer
Now let's have some fun:
from pygv.viewer import GenomeViewer
from pygv.tracks import gtf_track
gv = GenomeViewer()
gencode_track = gtf_track.GtfTrack(
"~/gencode.v34lift37.annotation.sorted.gtf.gz",
name="GENCODE", show_genes=True, show_transcript_id=True,
filters=lambda x: x.transcript_id in {"ENST00000332995.11_1", "ENSG00000112137.17_4",
"ENST00000379350.5_1", "ENST00000379335.7_1"},
annotation_formatter=lambda x: x.split(".")[0]
)
gv.add_track(gencode_track)
gv.plot("chr6", 12714999, 13292716)
plt.show()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file genomeviewer-0.1.0.tar.gz.
File metadata
- Download URL: genomeviewer-0.1.0.tar.gz
- Upload date:
- Size: 79.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77b56df92ae9f33622674b57d6e74ba391b17ea5c0c208559f1fba4dbaf847e2
|
|
| MD5 |
b5fd99c0bde378cc4d8889518bff8454
|
|
| BLAKE2b-256 |
f29072a05c5283b505b324e93434dec5c45133bb5f61d5e68354995943826adc
|
Provenance
The following attestation bundles were made for genomeviewer-0.1.0.tar.gz:
Publisher:
publish-pypi.yml on liyao001/PyGV
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
genomeviewer-0.1.0.tar.gz -
Subject digest:
77b56df92ae9f33622674b57d6e74ba391b17ea5c0c208559f1fba4dbaf847e2 - Sigstore transparency entry: 1269777066
- Sigstore integration time:
-
Permalink:
liyao001/PyGV@25cffe2fb0d064aeb6789014ce104bd3c157c3f9 -
Branch / Tag:
refs/tags/0.1 - Owner: https://github.com/liyao001
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@25cffe2fb0d064aeb6789014ce104bd3c157c3f9 -
Trigger Event:
release
-
Statement type:
File details
Details for the file genomeviewer-0.1.0-py3-none-any.whl.
File metadata
- Download URL: genomeviewer-0.1.0-py3-none-any.whl
- Upload date:
- Size: 74.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42f0f9c4d89d3d70a43bdf9f65dbe8d19ec1a84ee22c216f9aed6a68c44600e5
|
|
| MD5 |
17cd28b35d46a1ed97741ed2ca826145
|
|
| BLAKE2b-256 |
3f14ba4cae8f2c89dc2150e58d925967ad21830a96322a9dd68b8cc7a102e4ce
|
Provenance
The following attestation bundles were made for genomeviewer-0.1.0-py3-none-any.whl:
Publisher:
publish-pypi.yml on liyao001/PyGV
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
genomeviewer-0.1.0-py3-none-any.whl -
Subject digest:
42f0f9c4d89d3d70a43bdf9f65dbe8d19ec1a84ee22c216f9aed6a68c44600e5 - Sigstore transparency entry: 1269777195
- Sigstore integration time:
-
Permalink:
liyao001/PyGV@25cffe2fb0d064aeb6789014ce104bd3c157c3f9 -
Branch / Tag:
refs/tags/0.1 - Owner: https://github.com/liyao001
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@25cffe2fb0d064aeb6789014ce104bd3c157c3f9 -
Trigger Event:
release
-
Statement type: