R: Plot Output

renderPlot {shiny} | R Documentation

## Plot Output

### Description

Renders a reactive plot that is suitable for assigning to an `output` slot.

### Usage

    renderPlot(expr, width = "auto", height = "auto", res = 72, ...,
      env = parent.frame(), quoted = FALSE, execOnResize = FALSE,
      outputArgs = list())

### Arguments

`expr` | An expression that generates a plot.
`width, height` | The width/height of the rendered plot, in pixels; or `'auto'` to use the `offsetWidth`/`offsetHeight` of the HTML element that is bound to this plot. You can also pass in a function that returns the width/height in pixels or `'auto'`; in the body of the function you may reference reactive values and functions. When rendering an inline plot, you must provide numeric values (in pixels) to both `width` and `height`.
`res` | Resolution of resulting plot, in pixels per inch. This value is passed to `png`. Note that this affects the resolution of PNG rendering in R; it won't change the actual ppi of the browser.
`...` | Arguments to be passed through to `png`. These can be used to set the width, height, background color, etc.
`env` | The environment in which to evaluate `expr`.
`quoted` | Is `expr` a quoted expression (with `quote()`)? This is useful if you want to save an expression in a variable.
`execOnResize` | If `FALSE` (the default), then when a plot is resized, Shiny will replay the plot drawing commands with `replayPlot()` instead of re-executing `expr`. This can result in faster plot redrawing, but there may be rare cases where it is undesirable. If you encounter problems when resizing a plot, you can have Shiny re-execute the code on resize by setting this to `TRUE`.
`outputArgs` | A list of arguments to be passed through to the implicit call to `plotOutput` when `renderPlot` is used in an interactive R Markdown document.

### Details

The corresponding HTML output tag should be `div` or `img` and have the CSS class name `shiny-plot-output`.

### Interactive plots

With ggplot2 graphics, the code in `renderPlot` should return a ggplot object; if instead the code prints the ggplot2 object with something like `print(p)`, then the coordinates for interactive graphics will not be properly scaled to the data space.

See `plotOutput` for more information about interactive plots.

### See Also

For the corresponding client-side output function, and example usage, see `plotOutput`. For more details on how the plots are generated, and how to control the output, see `plotPNG`.

[Package shiny version 1.1.0 Index]