A python package with useful biological data plotting methods
Project description
biodataplot - A standard biological data plot package
biodataplot
is a package that provides various useful biological plotting functions using matplotlib.
Installation
pip install biodataplot
biodataplot
biodataplot
contains different modules that serve different purposes. The common
module includes general plotting functions (not biology-related). The utils
module includes some plot utility functions. Other modules are related to certain biological area.
In biodataplot, the plot functions could be separated into two types. The first type works on a matplotlib axes Object and return the artists. The second type works on a figure and return the matplotlib figure itself. Some functions may require additional packages.
common
A module with general plotting functions.
plot_fast_bar
An alternative bar plotting using fill_between
. This allows quick plot on many bars (10000+) but with less customization available.
plot_ranked_values
genomeview
The genomeview contains the plot_genome_view
function, which draws browser snapshot on certain regions.
import biodataplot.genomeview as gv
gv.plot_genome_view(r, data)
gv.plot_genome_view(r, data, formatters=formatters, height_ratios=height_ratios)
rs
: Region(s) to be plotted. It could be a single stringchr1:1-1000
, aGenomicAnnotation
instance, or a list with string orGenomicAnnotation
as elements.data
: A dictionary of data to be plottedformatters
: A dictionary of formatter. Other than datatype and tracktype, formatters are unique for different track types. On could find more details in the track section.height_ratios
: A dictionary of relative track heights. The default height of track is 3.group_autoscales
: A list of list that indicates the tracks to be put in groups.scalebar_kw
: If None, no scalebar is drawn.coordinate_kw
: If None, no coordinate ruler is drawn
Data
Users could input the data as a dictionary of file(s)
data={"Signal":"signal.bw", "Anno1":"anno1.bed"}
All supported file / data types:
- bigwig (
signal
) - bedgraph (
signal, arc, annotation
, default toannotation
if not specified) - bed (
annotation
) - gff3 / gtf (
annotation
) - fasta (
nucleotide_density
)
biodataplot
will automatically look for any index file whenever applicable. Without an index file, it may take a long time for biodataplot
to load big data files. For certain data types, multiple track types could be used. In such case, one may want to specify the tracktype in the formatters:
data={"Signal":"signal.bedgraph"}
formatters={"Signal":{"tracktype":"signal"}}
Tracks
There are 4 types of tracks supported. Each track has its specific options used in formatters.
Signal
In signal plotting, either bigwig or bedgraph files are supported.
vmod
: Modify the values in the signal before plotting.density
: If specified, plot a smoothed signals on the same graph.{"winsize":100}
trackstyle
: Two track styles are support: eitherbar
orheatmap
trackstyle: bar
pcolor
: Color for positive signalsncolor
: Color for negative signalsplot_kw
: Customized parameters used inplot_fast_bar
trackstyle: heatmap
plot_kw
: Customized parameters used inimshow
fixed_ymin_ymax
: Fixymin
,ymax
as the inputyscale
: Eitherasym_pos_neg
orsame_ymin_ymax
. These alternative yscales are useful when dealing with both positive and negative signals.
Arc
min_signal
: Minimum signal cutoff to draw the arc
Annotation
filter_func
: A filtering function to retain annotations that pass this filteranno_height
: Annotation heightanno_vspace
: Vertical space between two annotationsplot_kw
: Customized parameters used inmatplotlib.patches.Rectangle
anno_name
: A functionf(anno)
that returns a string to display. Otherwise, theanno_name
is automatically determined.
Nucleotide_density
winsize
The window size for nucleotide density. OnlyACGT
are supported in the density plot. All other nucleotides are ignored.plot_kw_dict
: A dictionary of customized parameters used inplot
. The dictionary keys should be in[A, C, G, T]
.
metaplot
This module is under testing.
sequence
plot_sequence_layout
utils
A module with useful plot utilities.
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
Built Distribution
File details
Details for the file biodataplot-0.0.2.tar.gz
.
File metadata
- Download URL: biodataplot-0.0.2.tar.gz
- Upload date:
- Size: 22.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b80aa78839b5b3c8ccc59a24360ab9b115d8eb0120f97295cf14202b8db3555b |
|
MD5 | cf8c4140084c5137c6ffa09dc661932c |
|
BLAKE2b-256 | 75a889ae21930f23c05e1f6b0f28ec4ab4d0f0f1ec9a11bde5da82df2a4597ab |
File details
Details for the file biodataplot-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: biodataplot-0.0.2-py3-none-any.whl
- Upload date:
- Size: 21.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b1ee50e56f71a4facecae9ee4f5bf5364474dfc8cb27eb36c6c092540baca10 |
|
MD5 | 333c21189cd10c65b1d64701aefcdfdc |
|
BLAKE2b-256 | 86a49a550acd52ff261441a452cd5d1fc01265a75f06f6e55b8aec7cf9470d4a |