Penembakan massal: modifikasi keluaran
Dalam latihan ini, Anda akan memperluas aplikasi Shiny yang sebelumnya Anda bangun sehingga lingkaran merah dengan ukuran berdasarkan jumlah korban jiwa muncul pada peta interaktif, bersamaan dengan ringkasan kasus saat lingkaran diklik. Aplikasi Anda akan menyerupai gambar pada cuplikan layar ini.

Latihan ini adalah bagian dari kursus
Membangun Aplikasi Web dengan Shiny di R
Petunjuk latihan
- Perbarui ekspresi reaktif
rval_mass_shootingssehingga himpunan data difilter berdasarkan jumlah korban jiwa (nb_fatalities) dan rentang tanggal (date_range) yang dipilih pengguna. - Perbarui kode di dalam
addCircleMarkers()sehinggaradiuslingkaran dipetakan kefatalitiesdan parameterpopupdipetakan kesummary. Perhatikan bahwa Anda dapat memetakan parameterpke kolom/fieldfmenggunakanp = ~ f.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
ui <- bootstrapPage(
theme = shinythemes::shinytheme('simplex'),
leaflet::leafletOutput('map', height = '100%', width = '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")
),
tags$style(type = "text/css", "
html, body {width:100%;height:100%}
#controls{background-color:white;padding:20px;}
")
)
server <- function(input, output, session) {
rval_mass_shootings <- reactive({
# MODIFY CODE BELOW: Filter mass_shootings on nb_fatalities and
# selected date_range.
mass_shootings
})
output$map <- leaflet::renderLeaflet({
rval_mass_shootings() %>%
leaflet() %>%
addTiles() %>%
setView( -98.58, 39.82, zoom = 5) %>%
addTiles() %>%
addCircleMarkers(
# CODE BELOW: Add parameters popup and radius and map them
# to the summary and fatalities columns
fillColor = 'red', color = 'red', weight = 1
)
})
}
shinyApp(ui, server)