PyMOL visualising binding interfaces

Today I’ve been trying to come up with a nice way of visualising the binding interface between protein-protein or protein-DNA complexes. What follows is a quick little walk-through mostly for my own purposes so that I can remember what I’ve done in the future.

Download PDB file from pdb.org, here XXXX will be your PDB accession code.

Point a terminal window at the download directory

cd ~/Downloads

Run CCP4:

ncont XYZIN XXXX.pdb >> XXXX.ncont << eof

source A              [or whatever your protein chain is]

target E,F             [or whatever the DNA chains are]

eof

This will give us a file XXXX.ncont in the Downloads folder which contains all the information about the binding interface

Download the PyMOL script for converting CCP4 (*.cont) files: ccp4_ncont.py

Now in PyMOL, load the CCP4 interuptation script

run ~/Downloads/ccp4_ncont.py

Load the file using File -> or:

load ~/Downloads/XXXX.pdb

Manipulate the file to something presentable

In command line type:

ccp4_ncont ~/Downloads/XXXX.ncont, selName1=prot, selName2=DNA

This gives us all of the atoms and residues involved in binding as useful objects (right hand side of the Viewer Window)

Now we can visualise things a bit better.

select dsDNA, chain E+F

This selects chains E and F and creates an object called dsDNA. On this object, hide everything, they we can set about visualising the thing better:

show_as cartoon, dsDNA
set cartoon_ring_mode, 3
set cartoon_ring_finder, 1
color green, dsDNA and elem C

For other styles see the Pymol wiki

Now we can work on the protein and show the residues at the binding interface

show sticks, prot_res
color gray60, plot_res

Or select the object and click C (for Color) then “by element”

And then adjust the Carbon colour to the desired using

color gray60, elem C

Replacing gray60 with your chosen colour

Currently we have a pretty good stick diagram, but a delicate ball and stick model looks more professional

set stick_radius, 0.1
show spheres, prot_res
set sphere_scale, 0.15

So our balls of the ball and stick are now present, but to make these more presentable we need to improve their quality when we render

set sphere_quality, 4
set stick_quality, 16

As the figure grows in complexity it maybe required to turn ray shadows off

set ray_shadow, off

I’ve also recoloured the DNA bases using

color green, dsDNA+ elem C

Now we can add Van der Waal radii of the key atoms to emphasize the binding interface.

show dots, prot_atom
show dots, dna_atom

Optimise the viewing angle using:

orient dsDNA

And then use the mouse-wheel to move the transparency of the background, so that the emphasis is in what want to see and the background does not distort it

Finally, to show the co-factor (here it is Mg, in light green) I show it as a Sphere but as we’ve changed the spheres for the ball and stick model we need to:

alter elem mg, vdw=10.0
rebuild

And dont forget to ray for pretty pictures


This page previously appeared on morganbye.net[^1][^2][^3]

[^1:] http://morganbye.net/pymol-visualising-binding-interfaces [^2:] http://morganbye.net/2012/02/pymol-visualising-binding-interfaces) [^3:] http://morganbye.net/uncategorized/2012/02/pymol-visualising-binding-interfaces/

What distinguishes you from other developers?

I've built data pipelines across 3 continents at petabyte scales, for over 15 years. But the data doesn't matter if we don't solve the human problems first - an AI solution that nobody uses is worthless.

Are the robots going to kill us all?

Not any time soon. At least not in the way that you've got imagined thanks to the Terminator movies. Sure somebody with a DARPA grant is always going to strap a knife/gun/flamethrower on the side of a robot - but just like in Dr.Who - right now, that robot will struggle to even get out of the room, let alone up some stairs.

But AI is going to steal my job, right?

A year ago, the whole world was convinced that AI was going to steal their job. Now, the reality is that most people are thinking 'I wish this POC at work would go a bit faster to scan these PDFs'.

When am I going to get my self-driving car?

Humans are complicated. If we invented driving today - there's NO WAY IN HELL we'd let humans do it. They get distracted. They text their friends. They drink. They make mistakes. But the reality is, all of our streets, cities (and even legal systems) have been built around these limitations. It would be surprisingly easy to build self-driving cars if there were no humans on the road. But today no one wants to take liability. If a self-driving company kills someone, who's responsible? The manufacturer? The insurance company? The software developer?