시작하기무료로 시작하기

플롯 제목 추가: 텍스트 입력

Shiny에서는 사용자가 어떤 입력값이든 변경하는 즉시, 해당 입력의 현재 값을 서버 함수의 input 인자를 통해 서버에서 바로 사용할 수 있게 해줘요. 어떤 입력이든 input$<inputId>로 값을 가져올 수 있어요.

텍스트 입력에 기본 초기값을 지정하려면 value 인수를 사용합니다.

이 연습은 강의의 일부입니다

사례 연구: R의 Shiny로 웹 애플리케이션 만들기

강의 보기

연습 안내

제공된 Shiny 앱은 gapminder 데이터셋에서 국가별 1인당 GDP와 기대수명을 그립니다. 사용자가 플롯의 제목을 바꿀 수 있도록 텍스트 입력을 추가하세요. 구체적으로:

  • UI에 ID가 "title"이고, 라벨이 "Title", 기본값이 "GDP vs life exp"인 텍스트 입력을 추가하세요.
  • 서버 코드에서 ggtitle() 함수(24행) 안에 제목을 넣어, 플롯 제목이 항상 현재 제목 입력값을 반영하도록 하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Load the ggplot2 package for plotting
library(ggplot2)

# Define UI for the application
ui <- fluidPage(
  sidebarLayout(
    sidebarPanel(
      # Add a title text input
      ___(___, ___, ___)
    ),
    mainPanel(
      plotOutput("plot")
    )
  )
)

# Define the server logic
server <- function(input, output) {
  output$plot <- renderPlot({
    ggplot(gapminder, aes(gdpPercap, lifeExp)) +
      geom_point() +
      scale_x_log10() +
      # Use the input value as the plot's title
      ggtitle(___)
  })
}

# Run the application
shinyApp(ui = ui, server = server)
코드 편집 및 실행