Posts tagged pymol
I just want to point out and reiterate an old forum message about using PyMOL to display ions as spheres. The spheres representation shows the van der Waals radius of an atom. Apparently PyMOL stores the nonionic radii by default, 1.73 A for Mg, for example, rather than 0.71 A for Mg++. If you look up the desired ionic radius:
https://www.webelements.com/nickel/atom_sizes.html
You can set them in PyMOL using the alter command, to obtain a more appropriate picture:
PyMOL> alter (elem Ni), vdw=0.83
PyMOL> rebuild
Here is a pymol script to show methyl groups on your protein as spheres, color-coded by residue type.
Download the script here.
Usage: Load the script into pymol using the run… item in the pymol File menu to select this script or load it from the Pymol command line, then actually run it using the showmethyls command:
PyMOL> run /home/userName/path/toscript/showmethyls.py
PyMOL> showmethyls
Note that you can use the cd command on the pymol command line as you would in bash/tcsh, if you don’t remember the exact path to the script by heart.
This post expands on yesterday’s post that was focused on coloring protein structures by residue in Pymol.
-
Your data should be in a tab-delimited text file, formatted like this:
2 ALA CB 0.03416350
8 ILE CD1 0.43143940
13 LEU CD1 0.50597498
- Make sure you have downloaded data2bfactor.py from http://pldserver1.biochem.queensu.ca/~rlc/work/pymol/.
- Open pymol & load your protein structure.
-
Run any scripts you want to use:
PyMOL> run ~/scripts/data2bfactor.py
PyMOL> run ~/scripts/spectrumany.py
-
You may want to set all the b-factor data for your protein to –1 or to some other number beforehand, because any residues not mentioned in your data file will retain their original crystallographic B-factor:
PyMOL> alter MyProtein, b=-1
-
Define a selection of all your methyls:
PyMOL> select MyMethyls, (resn ALA and name CB)+(resn ILE and name CD1)+(resn LEU and name CD1+CD2)+(resn MET+MSE and name CE)+(resn VAL and name CG1+CG2)+(resn THR and name CG2)
-
Display things nicely:
PyMOL> hide lines
PyMOL> show cartoon
PyMOL> dss
PyMOL> color gray80, MyProtein
PyMOL> show spheres, MyMethyls
PyMOL> show sticks, resn ALA+ILE+LEU+VAL+MET and not (name c,o,n)
-
Now load your data onto your selection using the data2b_atom function defined within data2bfactor.py.
PyMOL> data2b_atom MyMethyls, /Users/username/Documents/datafile.txt
-
Apply the color gradient:
PyMOL> spectrumany b, red yellow, methyls
- Ray trace, save the image!
This post expands on info from a few other blog posts.
-
Your data should be in a tab-delimited text file, formatted like this:
3 0.677985
4 0.794402
5 0.972709
-
You may need to remove extra columns and/or headerscan cause problems. If you exported your file from excel, you may have to change your line break format. From a mac, you might see a bunch of ^M characters in your file. You can use a terminal to do one of these commands to fix the file:
tr '\r' '\n' < macfile.txt > unixfile.txt
tr -d '\r' < windowsfile.txt > unixfile.txt
- Save this data file to a known location, let’s say /Users/username/Documents/datafile.txt. It might make things easier to avoid having spaces in file or folder names. It seems to be important to use the absolute filename, rather than using shortcuts like
~
.
- Download data2bfactor.py from http://pldserver1.biochem.queensu.ca/~rlc/work/pymol/.
- Download spectrumany.py from http://pymolwiki.org/index.php/Spectrumany.
- Save these scripts to a known location, let’s say ~/scripts/.
- Open pymol & load your protein structure.
-
Run the scripts you downloaded using the PyMOL> commandline:
PyMOL> run ~/scripts/data2bfactor.py
PyMOL> run ~/scripts/spectrumany.py
-
Make a named selection for the set of residues you want to color:
PyMOL> select MyChainA, 3TGN and chain A and not resn Zn
-
You may want to set all the b-factor data for your selection to 0 or to some other number beforehand, because any residues not mentioned in your data file will retain their original crystallographic B-factor:
PyMOL> alter MyChainA, b=0
-
Now load your data onto your selection using the data2b_res function defined within data2bfactor.py:
PyMOL> data2b_res MyChainA, /Users/username/Documents/datafile.txt
-
Now color by B-factor. If you are lucky and the color gradient you want is already included in Pymol, you can use the function spectrum:
PyMOL> spectrum b, rainbow, MyChainA, minimum=0.6, maximum=1
- You will need to play around with minimum and maximum to optimize the image according to your data.
-
If you want a color gradient not already defined in Pymol, you will need to use the spectrumany command:
PyMOL> spectrumany b, red gray80, MyChainA, minimum=0.6,maximum=1
-
Now use the Display menu to make sure the Background is not set to be opaque, and ray trace the image:
PyMOL> ray
- Save your image and your session!