입력 유형

shinydashboard로 대시보드 만들기

Png Kee Seng

Researcher

입력 함수

  • UI에서 사용자는 입력을 제공합니다
    • 웨이터에게 주는 지시와 비슷합니다
  • shinyApp에서는 지시가 서버를 통해 전달됩니다
  • 이를 위해 UI에 입력 함수를 추가합니다
  • <type>input(<identifying label>, <displayed label>, ...)
    • 첫 번째 인수: 식별용 라벨
    • 두 번째 인수: 화면에 보이는 라벨
    • 나머지는 입력 유형별 인수
shinydashboard로 대시보드 만들기

예시: 수면 연구

  • 수면 연구를 수행해 데이터를 수집했다고 가정해 봅시다
  • shinyApp 사용자는 어떤 입력을 제공할 수 있을까요?

수면 연구 그래픽

1 Image by storyset on Freepik
shinydashboard로 대시보드 만들기

selectInput

  • 자주 쓰는 입력은 selectInput()입니다
  • 여러 옵션이 있는 드롭다운을 만듭니다
  • 세 번째 인수는 가능한 옵션의 벡터입니다
  • 이 예시는 옵션이 4개입니다
  • 지금은 server를 비워 둡니다
  • 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)
shinydashboard로 대시보드 만들기

selectInput

단일 선택의 selectInput.

shinydashboard로 대시보드 만들기

다중 선택이 가능한 selectInput

  • 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)
    
shinydashboard로 대시보드 만들기

다중 선택이 가능한 selectInput

다중 선택의 selectInput

shinydashboard로 대시보드 만들기

textInput

  • 중요한 인수 두 가지
    • value: 텍스트 상자의 초기 값
    • placeholder: 텍스트 상자 예시 텍스트
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)
shinydashboard로 대시보드 만들기

textInput

textInput 데모

shinydashboard로 대시보드 만들기

checkboxInput

  • 앱에 단일 체크박스를 제공합니다
  • value: 초기 상태를 설정하는 TRUE/FALSE
  • 변형으로 checkboxGroupInput이 있습니다
ui <- fluidPage(
  titlePanel("Sleeping habits in America"), 
  checkboxInput("checkboxlabel",
                "65 years and over",

value = FALSE))
server <- function(input, output, session) { } shinyApp(ui, server)
shinydashboard로 대시보드 만들기

checkboxInput

checkboxInput 데모

shinydashboard로 대시보드 만들기

sliderInput

  • 슬라이더로 두 가지 작업을 할 수 있습니다
    • 범위에서 단일 숫자 선택
    • 범위에서 두 개의 숫자 선택
  • 단일 값을 선택하려면 min과 max를 설정합니다
  • 초기 값은 value로 결정됩니다
  • 단계 크기는 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)
shinydashboard로 대시보드 만들기

sliderInput

sliderInput 데모. 단일 값 선택.

shinydashboard로 대시보드 만들기

범위가 있는 sliderInput

  • value를 길이 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)
shinydashboard로 대시보드 만들기

범위가 있는 sliderInput

범위 슬라이더

shinydashboard로 대시보드 만들기

연습해 봅시다!

shinydashboard로 대시보드 만들기

Preparing Video For Download...