Ubah ukuran titik: masukan numerik
Masukan numerik memiliki beberapa argumen tambahan yang tidak dimiliki masukan teks, seperti min dan max, yang menentukan angka minimum dan maksimum yang dapat dipilih.
Perhatikan bahwa saat nilai sebuah masukan diakses di kode server, Shiny cukup cerdas untuk mengetahui jenis masukan yang digunakan, dan karena itu jenis objek apa yang seharusnya dikembalikan. Artinya, jika Anda memiliki masukan numerik dengan ID "foo", maka input$foo akan mengembalikan nilai numerik.
Latihan ini adalah bagian dari kursus
Studi Kasus: Membangun Aplikasi Web dengan Shiny di R
Petunjuk latihan
Kode untuk aplikasi Shiny dari latihan sebelumnya telah disediakan. Tugas Anda adalah menambahkan masukan numerik yang dapat digunakan pengguna untuk mengubah ukuran titik pada plot. Secara khusus:
- Tambahkan masukan numerik pada UI dengan ID "size", label "Point size", nilai awal 1, dan nilai minimum 1.
- Tambahkan kode pada server sehingga masukan numerik tersebut menentukan ukuran titik pada plot (baris 20).
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Define UI for the application
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
textInput("title", "Title", "GDP vs life exp"),
# Add a size numeric input
___
),
mainPanel(
plotOutput("plot")
)
)
)
# Define the server logic
server <- function(input, output) {
output$plot <- renderPlot({
ggplot(gapminder, aes(gdpPercap, lifeExp)) +
# Use the size input as the plot point size
geom_point(size = ___) +
scale_x_log10() +
ggtitle(input$title)
})
}
# Run the application
shinyApp(ui = ui, server = server)