Skip to content
Python3 script for a phylogenetic analysis of VEGF-C amino acid sequences using BioPython, t_coffee, PhyML and the ETE toolkit
Branch: master
Clone or download
Pull request Compare This branch is 1 commit ahead of mjeltsch:master.
Latest commit d329fc6 May 29, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
images SVG images of hagfish and little skate added Aug 5, 2018
LICENSE Initial commit Jul 27, 2018 Update May 29, 2019 minor changes and typos corrected Apr 2, 2019

This code is associated with the paper from Jha et al., "KLK3/PSA and cathepsin D activate VEGF-C and VEGF-D". eLife, 2019.


Python3 script for a phylogenetic analysis of VEGF-C amino acid sequences using BioPython [], t_coffee [], and the ETE toolkit []. Its main goal is to identify whether there are distinct subgroups among the VEGF-C orthologs and whether and how they cluster to the different vertebrate clades. It produces a graphical output in SVG format, which can be viewed and edited using e.g. Inkscape [] or viewed with any SVG-capable bowser like Firefox or Chrome. The animal SVG silouette images are from [] (if public domain or CC0) or own creations. The script uses a species tree (from Open Tree [], which is used for the comparison. It produces also a gene tree (using PhyML []) for comparison, but the gene tree is not displayed by default.


This script has been developed to run under Linux and was specifically tested ONLY under Ubuntu 16.04 and 18.04. It has the following requirements:


It requires the installation of the following Ubuntu packages:

  • python3-setuptools
  • clustalw
  • mafft
  • dialign-tx
  • poa
  • probcos
  • muscle
  • kalign
  • amap-align
  • proda
  • prank
  • t-coffee
  • phyml

sudo apt -y --show-progress install inkscape python3-setuptools python3-pyqt4 python3-pyqt4.qtopengl python3-pip autoconf t-coffee clustalw mafft dialign-tx poa probcons muscle kalign amap-align proda prank phyml t-coffee imagemagick build-essential libblas-dev liblapack-dev zlib1g-dev libcairo2-dev libcurl4-openssl-dev python3-numpy python3-lxml python3-six

For some reason the Ubuntu package names some of the alignment executables differently and some links need to be created in order for t-coffee to find them:

sudo ln -s /usr/bin/dialign-tx /bin/dialign-t
sudo ln -s /usr/bin/clustalw /bin/clustalw2


In addition, the pcma executable need to be manually downloaded from [] and compiled because it is not available from the Ubuntu repository:

tar -xvzf pcma.tar.gz
cd pcma
sudo cp pcma /bin


The multicore-enabled version of phyml (phyml-mpi) is not available as a precompiled Ubuntu package and needs to be installed manually, but they single-core version works as well (is just slower). The command to execute the multicore version is:

mpirun -n 4 phyml-mpi -i " + PHYLIP_ALIGNED_TRIMMED_CODED + " -d aa -b -1

If this script is run on a (headless) server, the xvfb package is required since the ete3 package requires the presence of


The following Python modules need to be installed:

  • biopython
  • ete3

sudo pip3 install biopython ete3

You can’t perform that action at this time.