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.0.24.tar.gz (49.8 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.0.24-py3-none-any.whl (68.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: provis-0.0.24.tar.gz
  • Upload date:
  • Size: 49.8 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.0.24.tar.gz
Algorithm Hash digest
SHA256 61fca8fe87c94931e4c70a5b44fbf2e86ad955e6a80a4431d4b84d955cbe7106
MD5 eff1c763ee19abc9641f855e2a42461c
BLAKE2b-256 a809e250908395f8d0cae31799e091bd76c9273401e1146a81f72c8c6f9c8f1f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: provis-0.0.24-py3-none-any.whl
  • Upload date:
  • Size: 68.1 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.0.24-py3-none-any.whl
Algorithm Hash digest
SHA256 60ddc7f06b019604c51d3a7ed54ec995b405e5efb57a7036e9f70025f5bb74e7
MD5 f9adab37867037609b64490456938b13
BLAKE2b-256 2bdad4e162b17c85060a6cdaa2c10667bc27ad829a99bfa16ef9446147b66409

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