Progress

0th

Percentile

Reporting progress (object-oriented API)

Reports progress to the user during long-running operations.

Keywords
datasets
Arguments
session
The Shiny session object, as provided by shinyServer to the server function.
min
The value that represents the starting point of the progress bar. Must be less tham max.
max
The value that represents the end of the progress bar. Must be greater than min.
message
A single-element character vector; the message to be displayed to the user, or NULL to hide the current message (if any).
detail
A single-element character vector; the detail message to be displayed to the user, or NULL to hide the current detail message (if any). The detail message will be shown with a de-emphasized appearance relative to message.
value
A numeric value at which to set the progress bar, relative to min and max. NULL hides the progress bar, if it is currently visible.
style
Progress display style. If "notification" (the default), the progress indicator will show using Shiny's notification API. If "old", use the same HTML and CSS used in Shiny 0.13.2 and below (this is for backward-compatibility).
amount
Single-element numeric vector; the value at which to set the progress bar, relative to min and max. NULL hides the progress bar, if it is currently visible.
amount
For the inc() method, a numeric value to increment the progress bar.
Details

This package exposes two distinct programming APIs for working with progress. withProgress and setProgress together provide a simple function-based interface, while the Progress reference class provides an object-oriented API.

Instantiating a Progress object causes a progress panel to be created, and it will be displayed the first time the set method is called. Calling close will cause the progress panel to be removed.

As of version 0.14, the progress indicators use Shiny's new notification API. If you want to use the old styling (for example, you may have used customized CSS), you can use style="old" each time you call Progress$new(). If you don't want to set the style each time Progress$new is called, you can instead call shinyOptions(progress.style="old") just once, inside the server function.

Methods

See Also

withProgress

Aliases
  • Progress
Examples
## Only run examples in interactive R sessions
if (interactive()) {

ui <- fluidPage(
  plotOutput("plot")
)

server <- function(input, output, session) {
  output$plot <- renderPlot({
    progress <- Progress$new(session, min=1, max=15)
    on.exit(progress$close())

    progress$set(message = 'Calculation in progress',
                 detail = 'This may take a while...')

    for (i in 1:15) {
      progress$set(value = i)
      Sys.sleep(0.5)
    }
    plot(cars)
  })
}

shinyApp(ui, server)
}
Documentation reproduced from package shiny, version 0.14.2, License: GPL-3 | file LICENSE

Community examples

Looks like there are no examples yet.