Helpers to create output and render functions for using HTML widgets within Shiny applications and interactive Rmd documents.
shinyWidgetOutput( outputId, name, width, height, package = name, inline = FALSE, reportSize = FALSE, reportTheme = FALSE ) shinyRenderWidget(expr, outputFunction, env, quoted, cacheHint = "auto")
outputId | output variable to read from |
---|---|
name | Name of widget to create output binding for |
width, height | Must be a valid CSS unit (like |
package | Package containing widget (defaults to |
inline | use an inline ( |
reportSize | Should the widget's container size be reported in the shiny session's client data? |
reportTheme | Should the widget's container styles (e.g., colors and fonts) be reported in the shiny session's client data? |
expr | An expression that generates an HTML widget (or a promise of an HTML widget). |
outputFunction | Shiny output function corresponding to this render function. |
env | The environment in which to evaluate |
quoted | Is |
cacheHint | Extra information to use for optional caching using
|
An output or render function that enables the use of the widget within Shiny applications.
These functions are delegated to from within your widgets own shiny output and render functions. The delegation is boilerplate and always works the same for all widgets (see example below).
# shiny output binding for a widget named 'foo' fooOutput <- function(outputId, width = "100%", height = "400px") { htmlwidgets::shinyWidgetOutput(outputId, "foo", width, height) } # shiny render function for a widget named 'foo' renderFoo <- function(expr, env = parent.frame(), quoted = FALSE) { if (!quoted) { expr <- substitute(expr) } # force quoted htmlwidgets::shinyRenderWidget(expr, fooOutput, env, quoted = TRUE) }