Dotplot is a plot used mainly in biology for graphical visualisations of sequences' similarity. Read more on Wikipedia.
There are many programs that attempt to create dotplots already. Unfortunately most of these programs was created long time ago and written in old versions of Java. This Python3 package will allow new generations of bioinformaticians to generate dotplots much easier.
The easiest way to install this package with all dependencis is to use pip:
pip install dotplotgit clone https://github.com/kn-bibs/dotplotTo use graphical user interface, you will need to have pyqt5 installed, e.g. with:
sudo apt-get install python3-pyqt5To use matplotlib for drawing, you need to have it installed, e.g. with:
sudo pip3 install matplotlibNote: If you have chosen manual installation, use python3 dotplot command to run the program (while in the dotplot directory) instead of sole dotplot.
dotplot --fasta 1.fa 2.faTo use graphical user interface, type:
dotplot --fasta 1.fa 2.fa --guiYou can also fetch sequences from various sources (at once):
dotplot --gui --ncbi NP_001009852 --uniprot P03086You can set window size to be used in plot creation:
dotplot --fasta 1.fa 2.fa --gui --window_size 2Furthermore, you can combine it with stringency:
dotplot --fasta 1.fa 2.fa --gui --window_size 2 --stringency 2And you can use a similarity matrix to compare aminoacids:
dotplot --fasta 1.fa 2.fa --gui --window_size 2 --stringency 2 --matrix PAM120To access list of available options run command above with added option -h.
In the future our application will be able to read a wide range of input formats, and users will be able to parametrize alignment process and output format to their liking.
We are writing in Python3 and strict on code styling, with pep8 and pylint validation. We require all code merging to master to have at least 7,5 pylint score. To check this, at first install pytlint with pip3 and then, run the following command: python3 -m pylint dotplot.py, where in place of dotplot.py use any name of the module to be tested.