Learn R Programming

Click here to view a Shiny application integrating most features of NGLVieweR.

Description

NGLvieweR provides an R interface to the NGL.js JavaScript library. It can be used to visualize and interact with protein data bank (PDB) and structural files in R and Shiny applications. It includes a set of API functions to manipulate the viewer after creation and makes it possible to retrieve data from the visualization into R.

Installation

You can install the released version of NGLVieweR from CRAN with:

install.packages("NGLVieweR")

And the development version from GitHub with:

install.packages("remotes")
remotes::install_github("nvelden/NGLVieweR")

Basics

You can load a PDB (or any other supported structural file) directly or use a PDB code of a structure on RCSB.org. The below minimal example loads the PDB file and displays the structure in a "cartoon" representation.

#Load local pdb file
NGLVieweR("C:/7CID.pdb") %>%
addRepresentation("cartoon")

#Load protein by PDB code
NGLVieweR("7CID") %>%
addRepresentation("cartoon")

Functionality

There are functions provided to:

  • Overlay different representation styles
  • Alter the stage parameters (e.g. background, zoom- and rotation speed)
  • Zoom to specific selections
  • Add labels
  • Add contacts between residues
  • Auto rotate/rock

In Shiny apps, you can manipulate the NGLVieweR widget after creation using specific "API"" calls. Users can for instance add/remove representations, make snapshots, add labels or highlight specific regions. See the Get started section for a complete overview.

Copy Link

Version

Install

install.packages('NGLVieweR')

Monthly Downloads

481

Version

1.4.0

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Niels van der Velden

Last Published

November 22nd, 2024

Functions in NGLVieweR (1.4.0)

updateStage

Update Stage
updateVisibility

Update visibility
setScale

Set Scale
zoomMove

Set zoomMove
updateRepresentation

Update Representation
updateRock

Update Rock
updateSpin

Update Spin
setSpin

Set Spin
setSuperpose

Set superpose
snapShot

Snapshot
updateFullscreen

Fullscreen
setFocus

Set Focus
selectionParameters

Set selection parameters
reexports

Objects exported from other packages
NGLVieweR-shiny

Shiny bindings for NGLVieweR
addRepresentation

Add representation
addSelection

Add a selection
NGLVieweR_example

Run NGLVieweR example Shiny app
NGLVieweR

Create a NGLVieweR
addStructure

Add structure
removeSelection

Remove a selection
stageParameters

Set stage parameters
setQuality

Set Quality
updateColor

Update color of a selection
setPosition

Set Position
setRock

Set rock
updateZoomMove

Update zoomMove
updateSelection

Update a selection
setRotation

Rotate View
updateFocus

Update Focus