Skip to main content

Protein Visualization Library in Python

Project description

provis - A python based PROtein VISualization toolkit

Welcome to the repository of Provis - a python based protein visualization library.

Documentation, installation instructions.

Installation

The easiest way to install is with pip install provis or by cloning this github repo and running: "python3 setup.py develop" from the base directory.

The library has a few dependencies that have to be installed seperately.

FOLLOW THE INSTRUCTIONS IN "Requirements for Provis" AND "Setting up Provis" Otherwise provis will not work.

Requirements for Provis

Provis is based on the idea of not to reinvent the wheel, so it requires quite a few third party packages and binaries.

Binaries

OpenBabel

Easiest to install on Linux is by calling:

sudo apt install openbabel

Alterantively: http://openbabel.org/wiki/Main_Page

PDB2PQR and APBS

These binaries are required, as they are used to extract surface inforamtion.

Download from: https://www.poissonboltzmann.org/

MSMS

MSMS is optional. It is used to compute the surface, but a native method for the surface computation also exists in provis.

Download MSMS form: https://ccsb.scripps.edu/mgltools/downloads/

This tutorial might help: http://biskit.pasteur.fr/install/applications/deprecated/msms

Pip

All of the following can be dowloaded using pip and should be automatically installed when installing pip with provis:

  • BioPython
  • Trimesh
  • PyVista
  • Biopandas
  • Torch
  • Pyvtk
  • Open3d
  • rTree
  • Panel
  • Imageio-ffmpeg

Setting up Provis

Some file paths are hard coded in provis in order to maintain an uncluttered and organized directory structure.

However, this also means, that for provis to work this specific directory structure has to exist.

Directory structure

::

provis
   ├── data
   │   ├── data/
   │   ├── pdb/
   │   ├── img/
   │   ├── meshes/
   │   └── tmp/
   └── binaries          
       ├── apbs
       ├── msms
       └── pdb2pqr
	    └── pdb2pqr

Easy option ^^^^^^^^^^^^ Clone provis from github <https://github.com/czirjakkethz/provis>_ and simply use this git directory (provis) as the base directory.

More versitile option ^^^^^^^^^^^^^^^^^^^^^^^

A data/ and (potentially) a binaries/ directory within the root directory will have to be created.

-- If the environment variables for the binaries are set then the binaries/ directory is not needed (as provis will then use these variables to find the binaries). Otherwise the binaries from the Requirements :ref:req section will all have to be copied into the binaries/ directory. --

Subdirectiories of the data/ directory: +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ::

data
├── data
├── pdb
├── img   
├── meshes
└── tmp

The pdb directory is the location to store the pdb files. If a .pdb file is stored here then it is enough to pass the pdb id (filename without extension) to provis. Otherwise the full path to the .pdb file needs to be passed.

The img directory stores all the screenshots of the outputted plots.

The tmp directory stores all temporary files created by provis, such as the .face and .vert files of MSMS or the .mol2 files needed for the bonds.

Binaries

After installing the binaries either set the environment variables to specify the path of their location or manually move the binaries to where provis can find them.

Binaries directory ^^^^^^^^^^^^^^^^^^^^

If you are running Ubuntu (20.04.3 LTS) and installed provis by cloning the github repository then you are all set.

Otherwise move the binary files to the 'binaries' directory as explained below.

Subdirectiories and executables of the binaries/ directory: +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ::

binaries
├── apbs
├── msms       
└── pdb2pqr     
     └── pdb2pqr

apbs and msms are executables and pdb2pqr is the directory downloaded from the official website, containing the pdb2pqr binary.

Setting environment variables ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Alternatively the environment variables can be set to point to the binary files.

Set the MSMS_BIN, PDB2PQR_BIN and APBS_BIN variables to the full path to their appropriate binary files.

Example:

.. code-block::

export MSMS_BIN='/home/username/Downloads/msms'

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

provis-0.1.0.tar.gz (50.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

provis-0.1.0-py3-none-any.whl (68.6 kB view details)

Uploaded Python 3

File details

Details for the file provis-0.1.0.tar.gz.

File metadata

  • Download URL: provis-0.1.0.tar.gz
  • Upload date:
  • Size: 50.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10

File hashes

Hashes for provis-0.1.0.tar.gz
Algorithm Hash digest
SHA256 13aac6cfac5e2cfcaceab99245337fc2f7f24642213f3cfaa44658ea5df4b46e
MD5 cd75ce6e37618a583239ef5aac9ee37f
BLAKE2b-256 f650bc132ecdc3411d7e9c7a138a9166304f17d85270a39f0343331146a27ea0

See more details on using hashes here.

File details

Details for the file provis-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: provis-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 68.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10

File hashes

Hashes for provis-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6c9e0621b48baf379c7252080d27e66029684fdf4ec7daee8576b303cb10bbe4
MD5 c6f609eae30046304424771d508dfd28
BLAKE2b-256 72c3d9f0aca9b6f606dc6a01bdad865d80f27234be6101934e8f95b617d193a1

See more details on using hashes here.

Supported by

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