Typy vstupů

Tvorba dashboardů pomocí shinydashboard

Png Kee Seng

Researcher

Vstupní funkce

  • V UI mohou uživatelé zadávat vstupy
    • Jsou jako pokyny číšníkovi
  • V shinyApp jsou pokyny předávány přes server
  • To se provádí přidáním vstupních funkcí do UI
  • <type>input(<identifying label>, <displayed label>, ...)
    • První argument je identifikační popisek
    • Druhý argument je zobrazený popisek
    • Ostatní argumenty závisí na typu vstupu
Tvorba dashboardů pomocí shinydashboard

Příklad: studie spánku

  • Představte si, že jsme provedli studii spánku a shromáždili data
  • Jaké vstupy by mohl uživatel shinyApp poskytnout?

Grafika studie spánku

1 Obrázek od storyset na Freepik
Tvorba dashboardů pomocí shinydashboard

selectInput

  • Běžně používaným vstupem je selectInput()
  • Vytvoří rozbalovací nabídku s možnostmi
  • Třetí argument je vektor obsahující možnosti
  • V tomto příkladu máme čtyři možnosti.
  • Server prozatím ponecháme prázdný
  • ShinyApp spustíme pomocí 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)
Tvorba dashboardů pomocí shinydashboard

selectInput

selectInput s jedním výběrem.

Tvorba dashboardů pomocí shinydashboard

selectInput s vícenásobným výběrem

  • Lze přidat také argument 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)
    
Tvorba dashboardů pomocí shinydashboard

selectInput s vícenásobným výběrem

selectInput s vícenásobným výběrem

Tvorba dashboardů pomocí shinydashboard

textInput

  • Existují dva další důležité argumenty
    • value: hodnota, kterou je textové pole předvyplněno
    • placeholder: náhled očekávaného obsahu textového pole
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)
Tvorba dashboardů pomocí shinydashboard

textInput

Ukázka textInput

Tvorba dashboardů pomocí shinydashboard

checkboxInput

  • Přidá do aplikace jedno zaškrtávací políčko
  • value: TRUE nebo FALSE – nastavuje počáteční stav políčka
  • Existuje také varianta checkboxInput s názvem checkboxGroupInput
ui <- fluidPage(
  titlePanel("Sleeping habits in America"), 
  checkboxInput("checkboxlabel",
                "65 years and over",

value = FALSE))
server <- function(input, output, session) { } shinyApp(ui, server)
Tvorba dashboardů pomocí shinydashboard

checkboxInput

Ukázka checkboxInput

Tvorba dashboardů pomocí shinydashboard

sliderInput

  • Vytvoří posuvník, který uživateli umožňuje jednu ze dvou věcí
    • Vybrat jednu číselnou hodnotu z rozsahu
    • Vybrat dvě číselné hodnoty z rozsahu
  • Pro výběr jedné hodnoty je nutné nastavit min a max
  • Počáteční hodnotu určuje value
  • Velikost kroku určuje 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)
Tvorba dashboardů pomocí shinydashboard

sliderInput

Ukázka sliderInput. Uživatel může vybrat pouze jednu hodnotu.

Tvorba dashboardů pomocí shinydashboard

sliderInput s rozsahy

  • Posuvník lze udělat oboustranným, pokud je value nastaveno jako vektor délky 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)
Tvorba dashboardů pomocí shinydashboard

sliderInput s rozsahy

Posuvník s rozsahy

Tvorba dashboardů pomocí shinydashboard

Pojďme si procvičit!

Tvorba dashboardů pomocí shinydashboard

Preparing Video For Download...