Netiquette · Download · News · Gallery · Homepage · DSSR Manual · G-quadruplexes · DSSR-Jmol · DSSR-PyMOL · DSSR Licensing · Video Overview· RNA Covers

Author Topic: RNA cartoon-block representations with PyMOL and DSSR  (Read 32824 times)

Offline xiangjun

  • Administrator
  • with-posts
  • ***
  • Posts: 1642
    • View Profile
    • 3DNA homepage
RNA cartoon-block representations with PyMOL and DSSR
« on: July 24, 2015, 02:18:56 pm »
In addition to its functionality for RNA structural analysis, the DSSR program also introduces novel cartoon-block schematic representations of nucleic acid structures to be rendered with PyMOL. Illustrated below are four sample images with the script and all data files (cartoon-block.tar.gz).

"yeast phenylalanine tRNA (1ehz) with base blocks" title="yeast phenylalanine tRNA (1ehz) with base blocks""yeast phenylalanine tRNA (1ehz) with WC base-pair blocks" title="yeast phenylalanine tRNA (1ehz) with WC base-pair blocks"
"1msy: with the minor groove edge (black) of the C-G pair that closes the GUAA tetraloop facing the viewer" title="1msy: with the minor groove edge (black) of the C-G pair that closes the GUAA tetraloop facing the viewer""27-nt rRNA fragment with GUAA tetraloop (1msy) -- base blocks in outline" title="27-nt rRNA fragment with GUAA tetraloop (1msy) -- base blocks in outline"

Here is the script (named tasks in the associated tarball cartoon-block.tar.gz):
Code: Bash
  1. # ------------------------------------------------------------------
  2. # 1. Yeast phenylalanine tRNA 1ehz in default settings.
  4. # Note the coordinates ("1ehz-ok.pdb") is transformed from the
  5. # original PDB file "1ehz.pdb" to put the helix containing the T-stem
  6. # and acceptor stem horizontally, and the helix containing the D-stem
  7. # and anti-codon stem 'vertically'.
  9. x3dna-dssr -i=1ehz-ok.pdb --helical-axis -o=temp  # note the --helical-axis option
  10. \mv dssr-helicalAxes.pdb 1ehz-ok-helices.pdb       # rename file with helical axes
  11. x3dna-dssr -i=1ehz-ok.pdb --block-file -o=1ehz-ok-blocks.r3d  # note the option --block-file
  13. # The three files "1ehz-ok.pdb", "1ehz-ok-blocks.r3d", and
  14. # "1ehz-ok-helices.pdb" combined in "1ehz-ok.pml" and ray-traced with
  15. # PyMOL to get "1ehz-ok-pymol.png".
  17. pymol -qkc 1ehz-ok.pml
  18. convert -trim +repage -border 10 -bordercolor white 1ehz-ok-pymol.png 1ehz-ok.png # just to crop
  20. # ------------------------------------------------------------------
  21. # 2. tRNA 1ehz with thicker rectangular blocks and Watson-Crick bps in
  22. #    longer blocks.
  24. \cp 1ehz-ok.pdb 1ehz-wc.pdb  # just give it a different name
  25. x3dna-dssr -i=1ehz-wc.pdb --helical-axis -o=temp
  26. \mv dssr-helicalAxes.pdb 1ehz-wc-helices.pdb
  27. x3dna-dssr -i=1ehz-wc.pdb --block-file=wc --block-depth=1.2 -o=1ehz-wc-blocks.r3d
  29. # Note the options "--block-file=wc" and "--block-depth=1.2". The
  30. # default block thickness (depth) is 0.5 angstrom. Again, file
  31. # "1ehz-wc.pml" combines the components to be ray-traced by PyMOL.
  33. pymol -qkc 1ehz-wc.pml
  34. convert -trim +repage -border 10 -bordercolor white 1ehz-wc-pymol.png 1ehz-wc.png
  36. # ------------------------------------------------------------------
  37. # 3. GUAA tetraloop mutant of sarcin/ricin domain from E. Coli 23S
  38. #    rRNA -- 1msy, with minor groove in black and oriented in a bp
  39. #    reference frame.
  41. x3dna-dssr -i=1msy.pdb --frame=A.2658+edge+wc -o=1msy-ok.pdb # set the view
  42. x3dna-dssr -i=1msy-ok.pdb -o=temp
  43. x3dna-dssr -i=1msy-ok.pdb --block-file=minor+wc --block-depth=0.8 -o=1msy-ok-blocks.r3d
  45. # Note the options "--frame=A.2658+edge+wc" and
  46. #                  "--block-file=minor+wc".
  47. # The "1msy-ok.pml" file is for PyMOL rendering.
  49. pymol -qkc 1msy-ok.pml
  50. convert -trim +repage -border 10 -bordercolor white 1msy-ok-pymol.png 1msy-ok.png
  52. # ------------------------------------------------------------------
  53. # 4. 1msy, with blocks in outline mode.
  55. \cp 1msy-ok.pdb 1msy-edge.pdb
  56. x3dna-dssr -i=1msy-edge.pdb -o=temp
  57. x3dna-dssr -i=1msy-edge.pdb --block-file=edge -o=1msy-edge-blocks.r3d
  59. # Note the option "--block-file=edge", and file "1msy-edge.pml".
  61. pymol -qkc 1msy-edge.pml
  62. convert -trim +repage -border 10 -bordercolor white 1msy-edge-pymol.png 1msy-edge.png

Following the above instructions, one should be able to reproduce the four sample images without a problem. Similar procedures can be easily applied to any other nucleic acid structures. Hopefully, this schematic visualization feature provides yet another reason for you to give DSSR a try.

Thomas Holder, the Principal Developer of PyMOL, has written a PyMOL plugin that implements the dssr_block command. Now users can create "block" shaped cartoons for nucleic acid bases and base pairs interactively in PyMOL.

Note added on 2016-04-01: DSSR now also has two new related options, --cartoon-block and --block-color, to make the generation of schematic cartoon block images more straightforward, and flexible.
« Last Edit: February 26, 2017, 11:12:04 pm by xiangjun »


Created and maintained by Dr. Xiang-Jun Lu [律祥俊] (
The Bussemaker Laboratory at the Department of Biological Sciences, Columbia University.