| NGLVieweR-shiny {NGLVieweR} | R Documentation | 
Shiny bindings for NGLVieweR
Description
Output and render functions for using NGLVieweR within Shiny applications and interactive Rmd documents.
Usage
NGLVieweROutput(outputId, width = "100%", height = "400px")
renderNGLVieweR(expr, env = parent.frame(), quoted = FALSE)
NGLVieweR_proxy(id, session = shiny::getDefaultReactiveDomain())
Arguments
| outputId | output variable to read from | 
| width,height | Must be a valid CSS unit (like  | 
| expr | An expression that generates a NGLVieweR. | 
| env | The environment in which to evaluate  | 
| quoted | Is  | 
| id | single-element character vector indicating the output ID of the chart to modify (if invoked from a Shiny module, the namespace will be added automatically) | 
| session | The Shiny session object to which the map belongs; usually the default value will suffice. | 
Value
NGLVieweR object that can be placed in the UI.
See Also
Examples
if (interactive()) {
library(shiny)
ui <- fluidPage(
  titlePanel("Viewer with API inputs"),
  sidebarLayout(
    sidebarPanel(
      textInput("selection", "Selection", "1-20"),
      selectInput("type", "Type", c("ball+stick", "cartoon", "backbone")),
      selectInput("color", "Color", c("orange", "grey", "white")),
      actionButton("add", "Add"),
      actionButton("remove", "Remove")
    ),
    mainPanel(
      NGLVieweROutput("structure")
    )
  )
)
server <- function(input, output) {
  output$structure <- renderNGLVieweR({
    NGLVieweR("7CID") %>%
      addRepresentation("cartoon",
        param = list(name = "cartoon", color = "residueindex")
      ) %>%
      stageParameters(backgroundColor = input$backgroundColor) %>%
      setQuality("high") %>%
      setFocus(0) %>%
      setSpin(TRUE)
  })
  observeEvent(input$add, {
    NGLVieweR_proxy("structure") %>%
      addSelection(isolate(input$type),
        param =
          list(
            name = "sel1",
            sele = isolate(input$selection),
            color = isolate(input$color)
          )
      )
  })
  observeEvent(input$remove, {
    NGLVieweR_proxy("structure") %>%
      removeSelection("sel1")
  })
}
shinyApp(ui, server)
}
[Package NGLVieweR version 1.3.1 Index]