Contents Previous Next

Cartoon Representations



Cartoon ribbons in PyMOL rival those of the popular Molscript/Raster3D packages, but PyMOL makes creating high quality images much easier. While PyMOL can read Molscript output directly (see the chapter on Molscript), this is no longer necessary or as convenient as utilizing PyMOL's built-in cartoon ribbon capability:

PyMOL built-in ribbons "molauto -nice ... | molscript -r > ..."

Molscript's cartoons are slightly more ideal, but PyMOL comes pretty darn close!

Note that all of the images in this section were colored using the rainbow feature (Color pop-up menu) and ray-traced with antialising enabled.

Pretty and Correct

One of the advantages of PyMOL's cartoon ribbon facility is that it is easy to switch between "smoothed" versions of protein secondary structure, and "correct" renditions which portray actual main chain coordinates. Although cartoons are often used solely to represent protein structures in a schematic sense, sometimes it is desirable to combine a schematic overall picture with atomic resolution in one particular location. However, unless the cartoon track properly with alpha-carbon positions, the resulting figures will look a little silly:

In the above image, the side chains are floating off into space. Disabling "flat sheets" from the Cartoons Menu or issuing the command

   set cartoon_flat_sheets, 0

will make the beta strands follow the true path of the backbone through space and give a more accurate rendition of the structure.

The appearance of a cartoon over the entire molecule will be substantially different when all smoothing features are turned off. For instance, with smoothing enabled:

   set cartoon_flat_sheets, 1
   set cartoon_smooth_loops, 1

the image differs substantially from:

   set cartoon_flat_sheets, 0
   set cartoon_smooth_loops, 0

which more accurately reflects the true path of the peptide backbone:

To facilitate beautiful imagery, smoothing is enabled by default (just like Molscript) [NOTE: THIS MAY CHANGE BEFORE VERSION 1.0] . Just be sure to turn it off when you want to study structures at atomic resolution (remember, real life is a bit more complicated than what you see in cartoons!).


Cartoon Types

Best results will be obtained when secondary structure information has been defined for each residue in the molecule. Under these conditions, PyMOL will do extra processing to insure that good normals have been calculated for helical regions, and perform smoothing of loops, where desired.

Also under such conditions, in automatic mode, cartoon representations will be assigned according to the secondary structure type. However, you can instruct PyMOL to ignore such information, and manually control when and where various cartoon representations are employed.

   show cartoon
   cartoon automatic       # default

   cartoon loop

   cartoon rect

   cartoon oval

   cartoon tube

   cartoon tube, 1:49/
   cartoon arrow, 50:99/
   cartoon loop, 100:149/
   cartoon oval, 150:199/
   cartoon rect, 200:250/

All cartoon ribbons have associated parameters accessible from the "set" command which allow you to change their appearance. See the chapter on Settings for more information.

Fancy Helices

set cartoon_fancy_helices, 0

Molscript addicts who simply must have those ribbon helices with tubular edges will not be disappointed with "fancy helices":

set cartoon_fancy_helices, 1

Secondary Structure Assignment

It is recommended that you read in PDB files which already have correct secondary structure assignments from a program like DSSP. However, PyMOL does have a reasonably fast secondary structure alignment algorithm called "dss". Please be aware that due to the subjective nature of secondary structure assignment in borderline cases, dss results will differ somewhat from DSSP.


   dss selection


   dss 1dfr

If you are visualizing an animation, you may wish derive secondary structure assignment from a specific state of the animation. This can be done with:


   dss selection, state


   dss mov, 1
To change assignments manually, the best way is to use the alter command as follows:
show cartoon
alter 11-40/, ss='H'             # assign residues 11-40 as helix
alter 40-52/, ss='L'             # assign residues 40-52 as loop
alter 52-65/, ss='S'             # assign residues 52-65 as sheet
alter 65-72/, ss='H'             # assign residues 65-72 as helix
rebuild                          # regenerate the cartoon

NOTE: This manual is a PyMOL Incentive Product with a One-Year Evaluation Period. You, your school, or your employer must purchase a PyMOL License & Maintenance Subscription to cover usage beyond the first year. We trust you to support the PyMOL project via the "honor" system, so please do your part! See Usage Terms for more information.
Copyright © 2004 DeLano Scientific LLC. All Rights Reserved.

Contents Previous Next