Jenis input

Membangun Dashboard dengan shinydashboard

Png Kee Seng

Researcher

Fungsi input

  • Di UI, pengguna dapat memberikan input
    • Ini seperti instruksi kepada pelayan
  • Dalam shinyApp, instruksi dikirim melalui server
  • Caranya dengan menambahkan fungsi input ke UI
  • <type>input(<identifying label>, <displayed label>, ...)
    • Argumen pertama adalah label pengenal
    • Argumen kedua adalah label tampilan
    • Argumen lain spesifik untuk tipe input
Membangun Dashboard dengan shinydashboard

Contoh: studi tidur

  • Bayangkan kita melakukan studi tidur dan mengumpulkan data
  • Input apa yang dapat diberikan pengguna shinyApp?

Grafik studi tidur

1 Gambar oleh storyset di Freepik
Membangun Dashboard dengan shinydashboard

selectInput

  • Input yang umum digunakan adalah selectInput()
  • Ini membuat menu drop-down dengan banyak opsi
  • Argumen ketiga adalah vektor berisi opsi
  • Pada contoh ini, ada empat opsi.
  • Untuk saat ini, biarkan server kosong
  • Render shinyApp dengan menjalankan shinyApp()
ui <- fluidPage(
  titlePanel("Sleeping habits in America"), 
    selectInput("selectlabel", 
                "Select an option",

choices = c("Option 1", "Option 2", "Option 3", "Option 4"))
server <- function(input, output, session) {
}
shinyApp(ui, server)
Membangun Dashboard dengan shinydashboard

selectInput

selectInput dengan satu pilihan.

Membangun Dashboard dengan shinydashboard

selectInput dengan banyak pilihan

  • Kita juga dapat menambahkan argumen multiple
    ui <- fluidPage(
    titlePanel("Sleeping habits in America"), 
      selectInput("selectlabel", 
                  "Select an option",
                  choices = c("Option 1", "Option 2", "Option 3", "Option 4"),
                  multiple = TRUE))
    server <- function(input, output, session) {
    }
    shinyApp(ui, server)
    
Membangun Dashboard dengan shinydashboard

selectInput dengan banyak pilihan

selectInput dengan banyak pilihan

Membangun Dashboard dengan shinydashboard

textInput

  • Ada dua argumen penting lainnya
    • value: nilai awal yang diisi pada textbox
    • placeholder: pratinjau isi yang diharapkan pada textbox
ui <- fluidPage(
  titlePanel("Sleeping habits in America"), 
  textInput("textlabel", 
            "Tell me your name", 

value = "Birdie",
placeholder = "Don"))
server <- function(input, output, session) {
}
shinyApp(ui, server)
Membangun Dashboard dengan shinydashboard

textInput

Demo textInput

Membangun Dashboard dengan shinydashboard

checkboxInput

  • Ini menyediakan satu kotak centang di aplikasi
  • value: TRUE atau FALSE, untuk mengatur status awal kotak centang
  • Ada variasi checkboxInput, yaitu checkboxGroupInput
ui <- fluidPage(
  titlePanel("Sleeping habits in America"), 
  checkboxInput("checkboxlabel",
                "65 years and over",

value = FALSE))
server <- function(input, output, session) { } shinyApp(ui, server)
Membangun Dashboard dengan shinydashboard

checkboxInput

Demo checkboxInput

Membangun Dashboard dengan shinydashboard

sliderInput

  • Ini menghasilkan slider yang memungkinkan dua hal
    • Pilih satu nilai numerik dari suatu rentang
    • Pilih dua nilai numerik dari suatu rentang
  • Untuk satu nilai, atur min dan max
  • Nilai awal ditentukan oleh value
  • Ukuran langkah ditentukan oleh step
ui <- fluidPage(
  titlePanel("Sleeping habits in America"), 
  sliderInput("sliderlabel",
              "Average hours of sleep",

min = 7.5, max = 11,
value = 9,
step = 0.02))
server <- function(input, output, session) { } shinyApp(ui, server)
Membangun Dashboard dengan shinydashboard

sliderInput

Demo sliderInput. Pengguna memilih satu nilai.

Membangun Dashboard dengan shinydashboard

sliderInput dengan rentang

  • Slider dapat dibuat dua sisi jika value diatur sebagai vektor panjang 2
ui <- fluidPage(
  titlePanel("Sleeping habits in America"), 
  sliderInput("sliderlabel",
              "Average hours of sleep",
              min = 7.5,
              max = 11,

value = c(8, 10),
step = 0.02)) server <- function(input, output, session) { } shinyApp(ui, server)
Membangun Dashboard dengan shinydashboard

sliderInput dengan rentang

slider dengan rentang

Membangun Dashboard dengan shinydashboard

Ayo berlatih!

Membangun Dashboard dengan shinydashboard

Preparing Video For Download...