Learn R Programming

shinydlplot (version 0.1.4)

downloadablePlot: Server-side logic for plot with download data button

Description

Download button appears on hover in top right.

Usage

downloadablePlot(input, output, session, plot, filename, content, ...)

Value

No return value, called to generate server logic.

Arguments

input, output, session

standard shiny boilerplate.

plot

A ggplot2 object or a function or reactive that generates a plot.

filename

A string of the filename, including extension, that the user's web browser should default to when downloading the file; or a function that returns such a string. (Reactive values and functions may be used from this function.)

content

A function that takes a single argument file that is a file path (string) of a nonexistent temp file, and writes the content to that file path. (Reactive values and functions may be used from this function.)

...

additional named arguments passed to renderPlot.

See Also

downloadablePlotUI, renderPlot.

Examples

Run this code
library(shiny)
library(shinyjs)
library(shinydlplot)
library(ggplot2)

ui <- fluidPage(
  useShinyjs(),
  downloadablePlotUI(id = 'iris_plot')
)

server <- function(input, output, session) {

  plot <- ggplot(iris, aes(x = Sepal.Length, y = Petal.Length)) + geom_point()

  callModule(downloadablePlot,
             id = 'iris_plot',
             plot = plot,
             filename = 'iris.csv',
             content = function(file) {write.csv(iris, file)})
}

if (FALSE) shinyApp(ui, server)


Run the code above in your browser using DataLab