Python interface to IGV - inspired by a tool written by @monkollek.
It includes the following executables:
igv
Launches IGV from the command line and optionally makes it load some file(s) and jump to some locus.igv_plotter
Automates taking IGV screenshots of one or more data files at one or more loci.igvweb_viewer
Allows bam, vcf, and/or bed file tracks to be viewed in a web browser using igv.js.
- To install for all users, run:
pip install igv_plotter
- To install in your home directory (eg. if you don't have permissions to install for all users), add ~/.local/bin to your PATH and run:
pip install igv_plotter --user
To see all command line options, you can do:
igvweb_viewer -h
igv_plotter -h
igv -h
igvweb_viewer script - usage example:
This starts a webserver for viewing 3 files at 2 loci:
igvweb_viewer my_file1.vcf my_file2.bam my_file3.bed 1:12345 chrX:12345
After starting this script, open your web browser to 127.0.0.1:8000 for an interactive browser-based IGV view of these files.
igv_plotter script - usage example:
This loads 3 files, and takes 2 snapshots:
igv_plotter my_file1.vcf my_file2.bam my_file3.bed 1:12345 chrX:12345
igv script - usage example:
This launches IGV with 2 files loaded at locus 1:12345:
igv my_file1.vcf my_file3.bed 1:12345
An ~/.igv_plotter
config file can be created and used to persitantly set any igv_plotter
or igv
command line options, by using lines like:
<command line option (without --)> = <value>
Issue reporting and pull requests are appreciated.
Unit tests can be run with:
python setup.py test
This code is open sourced under the MIT license.