Bắt đầu ngayBắt đầu miễn phí

Dùng chính lời của bạn

textAreaInput() rất hữu ích khi bạn muốn cho phép người dùng nhập văn bản dài hơn nhiều so với textInput() thông thường. Textarea có nhiều hàng và thanh cuộn dọc, cùng tham số rows để quyết định số hàng hiển thị.

Ngoài việc lớn hơn, textarea hoạt động rất giống với text input ở mọi khía cạnh khác.

Bài tập này là một phần của khóa học

Nghiên cứu tình huống: Xây dựng ứng dụng web với Shiny trong R

Xem khóa học

Hướng dẫn bài tập

Nhiệm vụ của bạn là thêm một ô nhập textarea để người dùng có thể tạo word cloud từ chính lời của họ. Cụ thể:

  • Thêm một text area gồm 7 hàng với inputId là "text" và nhãn là "Enter text".
  • Dùng giá trị của text area làm nguồn data cho word cloud, thay vì sách artofwar (dòng 20).

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

ui <- fluidPage(
  h1("Word Cloud"),
  sidebarLayout(
    sidebarPanel(
      # Add a textarea input
      ___,
      numericInput("num", "Maximum number of words",
                   value = 100, min = 5),
      colourInput("col", "Background color", value = "white")
    ),
    mainPanel(
      wordcloud2Output("cloud")
    )
  )
)

server <- function(input, output) {
  output$cloud <- renderWordcloud2({
    # Use the textarea's value as the word cloud data source
    create_wordcloud(data = ___, num_words = input$num,
                     background = input$col)
  })
}

shinyApp(ui = ui, server = server)
Chỉnh sửa và Chạy Mã