library(shiny) library(bslib) # Define UI for app that draws a histogram ---- ui <- page_sidebar( # App title ---- title = "Hello Shiny!", # Sidebar panel for inputs ---- sidebar = sidebar( # Input: Slider for the number of bins ---- sliderInput( inputId = "bins", label = "Number of bins:", min = 1, max = 50, value = 30 ) ), # Output: Histogram ---- plotOutput(outputId = "distPlot") ) # Define server logic required to draw a histogram ---- server <- function(input, output) { # Histogram of the Old Faithful Geyser Data ---- # with requested number of bins # This expression that generates a histogram is wrapped in a call # to renderPlot to indicate that: # # 1. It is "reactive" and therefore should be automatically # re-executed when inputs (input$bins) change # 2. Its output type is a plot output$distPlot <- renderPlot({ x <- faithful$waiting bins <- seq(min(x), max(x), length.out = input$bins + 1) hist( x, breaks = bins, col = "#75AADB", border = "white", xlab = "Waiting time to next eruption (in mins)", main = "Histogram of waiting times" ) }) } # Create Shiny app ---- shinyApp(ui = ui, server = server)