Schietpartijen met meerdere slachtoffers: help tonen
Het is altijd nuttig om gebruikers meer context over je app te geven. Een manier
om dit te doen is door een About-knop aan de app toe te voegen en de context
als een modaal dialoogvenster te tonen.
Precies dat ga je in deze oefening doen. Je app ziet eruit zoals in de screenshot wanneer de gebruiker op de knop "About" klikt.

Onthoud dat je de tekst 'About' in een modaal dialoogvenster kunt tonen met:
showModal(modalDialog("About"))
Deze oefening maakt deel uit van de cursus
Webapplicaties bouwen met Shiny in R
Oefeninstructies
- UI: Voeg een actieknop toe met de naam
show_about. - Server: Gebruik
observeEventom het tonen van een modaal dialoogvenster te activeren metshowModal(modalDialog(text_about, title = 'About')).
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
ui <- bootstrapPage(
theme = shinythemes::shinytheme('simplex'),
leaflet::leafletOutput('map', width = '100%', height = '100%'),
absolutePanel(top = 10, right = 10, id = 'controls',
sliderInput('nb_fatalities', 'Minimum Fatalities', 1, 40, 10),
dateRangeInput(
'date_range', 'Select Date', "2010-01-01", "2019-12-01"
),
# CODE BELOW: Add an action button named show_about
),
tags$style(type = "text/css", "
html, body {width:100%;height:100%}
#controls{background-color:white;padding:20px;}
")
)
server <- function(input, output, session) {
# CODE BELOW: Use observeEvent to display a modal dialog
# with the help text stored in text_about.
output$map <- leaflet::renderLeaflet({
mass_shootings %>%
filter(
date >= input$date_range[1],
date <= input$date_range[2],
fatalities >= input$nb_fatalities
) %>%
leaflet() %>%
setView( -98.58, 39.82, zoom = 5) %>%
addTiles() %>%
addCircleMarkers(
popup = ~ summary, radius = ~ sqrt(fatalities)*3,
fillColor = 'red', color = 'red', weight = 1
)
})
}
shinyApp(ui, server)