Advanced graphics options

Although renderPlot() makes it very easy to produce reactive outputs, as we've seen, it only works with the standard method of outputting graphics in R. Images from certain packages within R as well as images created outside of R will not be displayed.

Helpfully, Shiny includes a function to render all image files within a Shiny application: renderImage(). The simplest case is where you have a prerendered image that you wish to include. In the server.R file, the renderImage() call is made, returning a list with the path to the image and optionally the content type (to save Shiny from having to guess based on the file extension):

output$imageFile <- renderImage({ list(src = "foo.png", contentType = "image/png") }, deleteFile ...

Get Web Application Development with R Using Shiny - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.