htmlwidgets-shiny {htmlwidgets} | R Documentation |
Shiny bindings for HTML widgets
Description
Helpers to create output and render functions for using HTML widgets within Shiny applications and interactive Rmd documents.
Usage
shinyWidgetOutput(
outputId,
name,
width,
height,
package = name,
inline = FALSE,
reportSize = TRUE,
reportTheme = FALSE,
fill = !inline
)
shinyRenderWidget(expr, outputFunction, env, quoted, cacheHint = "auto")
Arguments
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? |
fill |
whether or not the returned tag should be treated as a fill item,
meaning that its |
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
|
Details
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).
Value
An output or render function that enables the use of the widget within Shiny applications.
Examples
# 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)
}