Open Access

iview: an interactive WebGL visualizer for protein-ligand complex

  • Hongjian Li1Email author,
  • Kwong-Sak Leung1,
  • Takanori Nakane2 and
  • Man-Hon Wong1
BMC Bioinformatics201415:56

DOI: 10.1186/1471-2105-15-56

Received: 23 November 2013

Accepted: 18 February 2014

Published: 25 February 2014

Abstract

Background

Visualization of protein-ligand complex plays an important role in elaborating protein-ligand interactions and aiding novel drug design. Most existing web visualizers either rely on slow software rendering, or lack virtual reality support. The vital feature of macromolecular surface construction is also unavailable.

Results

We have developed iview, an easy-to-use interactive WebGL visualizer of protein-ligand complex. It exploits hardware acceleration rather than software rendering. It features three special effects in virtual reality settings, namely anaglyph, parallax barrier and oculus rift, resulting in visually appealing identification of intermolecular interactions. It supports four surface representations including Van der Waals surface, solvent excluded surface, solvent accessible surface and molecular surface. Moreover, based on the feature-rich version of iview, we have also developed a neat and tailor-made version specifically for our istar web platform for protein-ligand docking purpose. This demonstrates the excellent portability of iview.

Conclusions

Using innovative 3D techniques, we provide a user friendly visualizer that is not intended to compete with professional visualizers, but to enable easy accessibility and platform independence.

Keywords

Structural bioinformatics Visualization Molecular docking

Background

Visualization of protein-ligand complex plays an important role in elaborating protein-ligand interactions and aiding novel drug design. To date, dozens of visualization tools already exist. VMD [1], PyMOL (http://​www.​pymol.​org) and Chimera [2] are very well-known and highly cited. They can interpret multiple file formats and generate multiple representations to supply precise and powerful control. AutoDockTools4 [3] provides native support for the PDBQT file format, which is widely used in various protein-ligand docking software such as AutoDock [3], AutoDock Vina [4], and our idock [5]. We also developed our own method [6] to visualize structures in virtual reality settings and employ fragment-based de novo ligand design strategy for interactive drug design. PoseView [7] and LigPlot+ [8], on the other hand, plot 2D diagrams of protein-ligand interactions from 3D coordinates.

In addition, there are web visualizers based on either Java applet, Adobe Flash, or HTML5 canvas. Jmol (http://​www.​jmol.​org), an open source Java viewer for chemical structures in 3D, has been deployed worldwide and recognized as the de facto molecular viewer on the web. GIANT [9], a web visualizer based on Jmol, supports analyzing protein-ligand interactions on the basis of patterns of atomic contacts obtained from the statistical analyses of 3D structures. However, Java is being disabled on more and more systems due to security concerns so that Java-free visualizers are highly required. JSmol [10], a JavaScript-only version of Jmol, includes the full implementation of the entire set of Jmol functionalities. Although Jmol and JSmol support a large set of advanced features including scripting, they rely on software rendering which is slow on large display areas and thus prevents detailed inspection of the structure. In contrast, WebGL visualizers benefit from GPU acceleration. For instance, ChemDoodle Web Components (http://​web.​chemdoodle.​com), a pure JavaScript chemical graphics and cheminformatics library, presents 2D and 3D graphics and animations for chemical structures, reactions and spectra, but it lacks protein surface construction. GLmol (http://​webglmol.​sourceforge.​jp), a molecular viewer on WebGL/JavaScript using the three.js library, supports multiple file formats and representations, and features an experimental version of surface construction based on the EDTSurf algorithm [11, 12]. Another study [13] also presents a WebGL technology for rendering molecular surface using the SpiderGL library [14]. Nevertheless, none of these WebGL visualizers support virtual reality effects.

Surface representation is a convenient way to visualize protein-ligand interactions. However, macromolecular surface calculation is computationally and memory intensive. Furthermore, the calculated mesh is very complex, often exceeding 500,000 polygons. Therefore its implementation in JavaScript/WebGL was considered to be very difficult. Most existing web visualizers either rely on slow software rendering, or lack virtual reality support. Moreover, the vital feature of protein surface construction is usually unavailable, and the support for PDBQT format is not implemented.

To address the above obstacles, we have developed iview, an interactive WebGL visualizer of protein-ligand complex, featuring three special effects in virtual reality settings and four surface representations (Table 1). Furthermore, we show that iview can be easily modified to adapt to different applications. As an application example, we have recently developed a web platform called istar [15] to automate large-scale protein-ligand docking using our idock [5]. Refactored from the feature-rich version of iview, we have also developed tailor-made version specifically for visualizing docking input data and output results of user-submitted jobs.
Table 1

Full features of iview

Category

Features

File format input

PDB

 

PDBQT

Camera

perspective

 

orthographic

Background

black

 

grey

 

white

Structure coloring

atom spectrum

 

protein chain

 

protein secondary structure

 

B factor

 

residue name

 

residue polarity

 

atom type

Primary structure

line

 

stick

 

ball & stick

 

sphere

 

dot

Secondary structure

ribbon

 

strand

 

cylinder & plate

 

C alpha trace

 

B factor tube

Protein surface

Van der Waals surface

 

solvent excluded surface

 

solvent accessible surface

 

molecular surface

Proteins surface opacity

1.0

 

0.9

 

0.8

 

0.7

 

0.6

 

0.5

Protein surface wireframe

yes

 

no

Atom and residue labeling

yes

 

no

Virtual reality effect

anaglyph

 

parallax barrier

 

oculus rift

Canvas manipulation

mouse

 

hand touch

Manipulation mode

rotation

 

translation

 

zooming

 

slab

Canvas export

png

iview is the only web visualizer that is accelerated by GPU hardware and supports three unique features: protein surface construction, virtual reality effects, and PDBQT format input.

Implementation

iview is refactored from GLmol 0.47, using three.js as its primary 3D engine with antialiasing support. It is based on WebGL canvas and can be easily integrated into existing HTML5 web pages to display molecular models without requiring Java or browser plugins. It loads a protein-ligand structure from the PDB (Protein Data Bank) [16] as its data source via a RESTful interface. It renders four standard representations of primary structure, namely line, stick, ball & stick and sphere, and five standard representations of secondary structure, namely ribbon, strand, cylinder & plate, C alpha trace and B factor tube. It colors the structure by either atom spectrum, protein chain, protein secondary structure, B factor, residue name, residue polarity, or atom type, by setting the vertex colors of the geometry object of the corresponding representation. It supports user interactions including rotation, translation, zooming and slab with mouse or hand touch manipulation. It provides both perspective and orthographic cameras, and anaglyph, parallax barrier and oculus rift effects from three.js examples for use in a virtual reality environment.

We have ported EDTSurf [11, 12], an fast algorithm to generating triangulated macromolecular surfaces by Euclidean distance transform, to JavaScript and integrated it into iview to construct and render in real time four representations of protein surface, namely Van der Waals surface, solvent excluded surface, solvent accessible surface and molecular surface, with opacity and wireframe adjustable by users. Note that molecular surface is in fact solvent excluded surface, but EDTSurf uses different ways to derive them. We therefore provide them both as two different surface representations in iview. Although the JavaScript implementation of the EDTSurf algorithm typically consumes a few seconds and 500MB to 700MB memory for computation, it is sufficiently efficient for practical applications. To limit CPU and memory usage, the calculation grid size is restricted to 180×180×180.

It is worthwhile to highlight that iview performs all parsing and rendering in the client browser, without any dependency on server side at all, ensuring the data privacy is maintained. This is unlike ChemDoodle Web Components, some of whose functions send data to a dedicated server for processing and wait for retrieval of results.

The differences between iview and GLmol are listed in the Additional file 1.

Results

We take as example the CCR5 chemokine receptor-HIV entry inhibitor maraviroc complex [17] (PDB code: 4MBS).

Figure 1 shows the human CCR5 secondary structure rendered as ribbon, and the ligands rendered as sphere.
https://static-content.springer.com/image/art%3A10.1186%2F1471-2105-15-56/MediaObjects/12859_2013_Article_6315_Fig1_HTML.jpg
Figure 1

iview rendering of the CCR5 chemokine receptor-HIV entry inhibitor maraviroc complex [17] (PDB code: 4MBS). The secondary structure of human CCR5 is rendered as ribbon. The marketed HIV drug maraviroc is rendered as sphere. This figure can be reproduced at http://​istar.​cse.​cuhk.​edu.​hk/​iview/​?​4MBS.

Figure 2 shows the anaglyph effect in a virtual reality environment. When users wear a spectacle with special filters on both sides, the disparity between two superimposed molecules creates a perception of depth, leading to visually more appealing identification of intermolecular interactions. The parallax barrier and oculus rift effects are illustrated in the Additional files 2 and 3.
https://static-content.springer.com/image/art%3A10.1186%2F1471-2105-15-56/MediaObjects/12859_2013_Article_6315_Fig2_HTML.jpg
Figure 2

iview rendering of the CCR5 chemokine receptor-HIV entry inhibitor maraviroc complex [17] (PDB code: 4MBS), with anaglyph effect enabled. The anaglyph effect encodes each eye’s image using filters of chromatically opposite colors to achieve stereoscopic 3D effect. When users wear a spectacle with special filters on both sides, each of the two differently filtered colored images reaches one eye, revealing an integrated stereoscopic image. This figure can be reproduced at http://​istar.​cse.​cuhk.​edu.​hk/​iview/​?​4MBS.

Figure 3 shows the protein surface generated by our JavaScript implementation of the EDTSurf algorithm [11, 12]. The human CCR5 is rendered as molecular surface colored by chain. The marketed HIV drug maraviroc is rendered as stick colored by chain. It can be clearly seen that the asymmetric unit is composed of two complexes, and the CCR5 forms a deep allosteric cavity where maraviroc binds.
https://static-content.springer.com/image/art%3A10.1186%2F1471-2105-15-56/MediaObjects/12859_2013_Article_6315_Fig3_HTML.jpg
Figure 3

iview rendering of the CCR5 chemokine receptor-HIV entry inhibitor maraviroc complex [17] (PDB code: 4MBS), with protein surface enabled. The human CCR5 is rendered as molecular surface colored by chain. The marketed HIV drug maraviroc is rendered as stick colored by chain. It can be clearly seen that the crystal structure consists of two complexes, and the CCR5 forms a deep allosteric cavity where maraviroc is buried. This figure can be reproduced at http://​istar.​cse.​cuhk.​edu.​hk/​iview/​?​4MBS.

We have successfully tested iview in Chrome 30, Firefox 25, Safari 6.1 and Opera 17. Support for IE 11 is experimental because gl_FrontFacing is unsupported in IE 11. Refer to http://​caniuse.​com/​webgl, for compatibility of WebGL support in desktop and mobile browsers.

Application example

We emphasize portability and usability, and illustrate that iview can be easily modified to suit one’s particular application, given that iview is free and open source under a permissive license. We take protein-ligand docking as an example. Based on the feature-rich version of iview, our tailor-made version specifically for idock jobs cleans up many dispensable functions, enabling a very neat interface. It only retains the rendering of primary structure of protein and ligand, and the construction of protein surface. Most importantly, it implements new features especially for protein-ligand docking purpose.

In the input phase of a docking job, it merely requires a PDB file, which can be obtained either from the PDB database [16] or via homology modeling, and then constructs the protein surface asynchronously in a separate web worker to keep the web page responsive. It automatically detects a binding site from the largest co-crystallized ligand first by finding the smallest cubic box that covers the entire ligand and then by extending the box by 50% in all the three dimensions in order to reserve space for conformational sampling. In case of non-existence of co-crystallized ligand, the binding site is defaulted to the geometric center of the protein. The binding site is visually depicted in the form of a cubic box whose center and size can be manually adjusted by users in real time.

In the output phase of a docking job, it displays the user-supplied cubic box for users to confirm that the predicted ligand conformations do fall inside the desired binding site. Other than PDB format, its parsers are capable of parsing a protein and multiple top hit ligands in PDBQT format used by idock. It displays the top hit ligand IDs in a horizontally scrollable row and provides a straightforward way to switch ligands easily through a button group. It has built-in support for putative intermolecular hydrogen bond detection by finding hydrogen bond donors and acceptors from protein and ligand and setting the distance threshold to 3.5Å. It automatically annotates important atoms, like those involving in intermolecular hydrogen bonds, by placing labels next to the corresponding atoms in the canvas. It lists the docking result files, predicted free energy and binding affinity values, molecular properties, SMILES representation, compound suppliers and annotations, and putative hydrogen bond positions and their lengths, in order to give users a quick overview of the top hit ligands and assist them in making decisions of which compounds to purchase for subsequent wet-lab experiments (Figure 4).
https://static-content.springer.com/image/art%3A10.1186%2F1471-2105-15-56/MediaObjects/12859_2013_Article_6315_Fig4_HTML.jpg
Figure 4

Tailor-made version of iview specifically for visualizing docking results of user-submitted jobs. It displays the user-supplied search space in the form of a cubic box so that the binding site is visually depicted. It displays the top hit ligand IDs in a horizontally scrollable row and provides a straightforward way to switch ligands easily. It lists the docking result files, predicted binding affinity values, molecular properties, compound suppliers and annotations, and putative hydrogen bonds, in order to give users a quick overview of the top hit ligands, and assist them in making decisions of which compounds to purchase for subsequent wet-lab experiments. This figure can be reproduced at http://​istar.​cse.​cuhk.​edu.​hk/​idock/​iview/​?​525a0abab0717fe3​1a000001.

Conclusions

We have designed and developed iview to be a simple and straightforward way to visualize protein-ligand complex. It enables non-experts to quickly elucidate protein-ligand interactions in a 3D manner. Furthermore, iview is free and open source, and can be easily integrated into any bioinformatics application that requires interactive protein-ligand visualization.

Availability and requirements

Project name: iview

Project home page: http://​istar.​cse.​cuhk.​edu.​hk/​iview

Operating system: Platform independent

Programming languages: JavaScript, HTML5, CSS3

Other requirements: Browser and graphics card with WebGL capability

License: Apache License 2.0

Declarations

Acknowledgements

Takanori Nakane thanks Japan Society for the Promotion of Science (JSPS) for scholarship (DC1). This work was partly supported by Grant-in-Aid for JSPS Fellows (Grant Number 11J04341).

Authors’ Affiliations

(1)
Department of Computer Science and Engineering, Chinese University of Hong Kong
(2)
Graduate School of Medicine, Kyoto University

References

  1. Humphrey W, Dalke A, Schulten K: VMD: visual molecular dynamics. J Mol Graph. 1996, 14 (1): 33-38. 10.1016/0263-7855(96)00018-5.View ArticlePubMed
  2. Pettersen EF, Goddard TD, Huang CC, Couch GS, Greenblatt D. M, Meng EC, Ferrin TE: UCSF Chimera - A visualization system for exploratory research and analysis. J Comput Chem. 2004, 25 (13): 1605-1612. 10.1002/jcc.20084.View ArticlePubMed
  3. Morris GM, Huey R, Lindstrom W, Sanner MF, Belew RK, Goodsell DS, Olson AJ: AutoDock4 and AutoDockTools4: automated docking with selective receptor flexibility. J Comput Chem. 2009, 30 (16): 2785-2791. 10.1002/jcc.21256.View ArticlePubMed CentralPubMed
  4. Trott O, Olson AJ: AutoDock Vina: improving the speed and accuracy of docking with a new scoring function, efficient optimization, and multithreading. J Comput Chem. 2010, 31 (2): 455-461.PubMed CentralPubMed
  5. Li H, Leung K-S, Wong M-H: idock: a multithreaded virtual screening tool for flexible ligand docking. 2012 IEEE Symposium on Computational Intelligence in Bioinformatics and Computational Biology (CIBCB). 2012, San Diego, California, USA: IEEE, 77-84. [http://​ieeexplore.​ieee.​org/​xpl/​articleDetails.​jsp?​arnumber=​6217214]View Article
  6. Tse C-M, Li H, Leung K-S, Lee K-H, Wong M-H: Interactive drug design in virtual reality. 15th International Conference on Information Visualisation (IV). 2011, London, UK: IEEE, 226-231. [http://​ieeexplore.​ieee.​org/​xpl/​articleDetails.​jsp?​arnumber=​6004005]
  7. Stierand K, Rarey M: PoseView - molecular interaction patterns at a glance. J Cheminform. 2010, 2: 50-10.1186/1758-2946-2-S1-P50.View Article
  8. Laskowski RA, Swindells MB: LigPlot+: multiple ligand-protein interaction diagrams for drug discovery. J Chem Inform Modeling. 2011, 51 (10): 2778-2786.View Article
  9. Kasahara K, Kinoshita K: GIANT: pattern analysis of molecular interactions in 3D structures of protein-small ligand complexes. BMC Bioinformatics. 2014, 15 (1): 12-10.1186/1471-2105-15-12.View ArticlePubMed CentralPubMed
  10. Hanson RM, Prilusky J, Renjian Z, Nakane T, Sussman JL: JSmol and the next-generation web-based representation of 3D molecular structure as applied to Proteopedia. Isr J Chem. 2013, 53 (3–4): 207-216.View Article
  11. Xu D, Zhang Y: Generating triangulated macromolecular surfaces by Euclidean distance transform. PLoS ONE. 2009, 4 (12): 8140-10.1371/journal.pone.0008140.View Article
  12. Xu D, Li H, Zhang Y: Fast and accurate calculation of protein depth by Euclidean distance transform. Research in Computational Molecular Biology, vol. 7821, pp. 304–316. Springer: Berlin;. 2013
  13. Callieri M, Andrei RM, Benedetto MD, Zoppè M, Scopigno R: Visualization methods for molecular studies on the web platform. Proceedings of the 15th International Conference on Web 3D Technology. 2010, New York, NY, USA: ACM, 117-126. [http://​dl.​acm.​org/​citation.​cfm?​id=​1836067]View Article
  14. Benedetto MD, Ponchio F, Ganovelli F, Scopigno R: SpiderGL: a JavaScript 3D graphics library for next-generation WWW. Proceedings of the 15th International Conference on Web 3D Technology. 2010, New York, NY, USA: ACM, 165-174. [http://​dl.​acm.​org/​citation.​cfm?​id=​1836075]View Article
  15. Li H, Leung K-S, Ballester PJ, Wong M-H: istar: a web platform for large-scale protein-ligand docking. PLoS ONE. 2014, 9 (1): 85678-10.1371/journal.pone.0085678.View Article
  16. Rose PW, Beran B, Bi C, Bluhm WF, Dimitropoulos D, Goodsell DS, Prlic A, Quesada M, Quinn GB, Westbrook JD, Young J, Yukich B, Zardecki C, Berman HM, Bourne PE: The RCSB Protein Data Bank: redesigned web site and web services. Nucleic Acids Res. 2011, 39 (suppl 1): 392-401.View Article
  17. Tan Q, Zhu Y, Li J, Chen Z, Han GW, Kufareva I, Li T, Ma L, Fenalti G, Li J, Zhang W, Xie X, Yang H, Jiang H, Cherezov V, Liu H, Stevens RC, Zhao Q, Wu B: Structure of the CCR5 Chemokine receptor-HIV entry inhibitor Maraviroc complex. Science. 2013, 341 (6152): 1387-1390. 10.1126/science.1241475.View ArticlePubMed

Copyright

© Li et al.; licensee BioMed Central Ltd. 2014

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://​creativecommons.​org/​licenses/​by/​2.​0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.