Learn R Programming

rgl (version 0.111.6)

shiny: Functions for integration of RGL widgets into Shiny app

Description

These functions allow an RGL scene to be embedded in a Shiny app.

Usage

rglwidgetOutput(outputId, width = "512px", height = "512px")
renderRglwidget(expr, env = parent.frame(), quoted = FALSE, outputArgs = list())

playwidgetOutput(outputId, width = "0px", height = "0px") renderPlaywidget(expr, env = parent.frame(), quoted = FALSE, outputArgs = list())

Value

Used internally by Shiny.

Arguments

outputId

The name for the control.

width, height

Width and height to display the control.

expr

An R expression returning a rglwidget (for renderRglwidget) or a playwidget (for renderPlaywidget) as output.

env

The environment in which to evaluate expr.

quoted

Is the expression already quoted?

outputArgs

A list containing arguments; see details below.

Author

Duncan Murdoch

Details

Use rglwidgetOutput or playwidgetOutput as an output object in a Shiny user interface section; use renderRglwidget or renderPlaywidget as the render function in the server section.

In a dynamic R Markdown document with runtime: shiny, you only call the render function, and may optionally pass width and height to the output function by putting them in a list in outputArgs. See the example below.

Examples

Run this code
if (FALSE) {
# This could be used in a dynamic R Markdown document.  See
# demo("shinyDemo") and demo("simpleShinyRgl") for Shiny apps.

inputPanel(
  sliderInput("n", label = "n", min = 10, max = 100, value = 10, step = 10)
)

renderRglwidget({
    n <- input$n
    try(close3d())
    plot3d(rnorm(n), rnorm(n), rnorm(n))
    rglwidget()
  }, outputArgs = list(width = "auto", height = "300px"))

}

Run the code above in your browser using DataLab