เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ปรับแต่งพารามิเตอร์ของ word cloud

create_wordcloud() มีอาร์กิวเมนต์เสริม 2 ตัว ได้แก่ num_words ซึ่งเป็นจำนวนเต็มสำหรับกำหนดจำนวนคำสูงสุดที่จะแสดง และ background สำหรับกำหนดสีพื้นหลังของภาพ

ตอนนี้ Shiny app ยังแสดง word cloud ด้วยค่าพารามิเตอร์เดิมทุกครั้ง เนื่องจากฟังก์ชันสร้าง word cloud รองรับพารามิเตอร์ทั้งสองนี้ จึงน่าเสียดายหากไม่นำมาใช้งาน ควรให้ผู้ใช้สามารถปรับค่าเหล่านี้ได้เองผ่าน Shiny inputs

โจทย์คือการเพิ่ม input สองตัวเข้าไปใน Shiny app แล้วนำค่าจาก input เหล่านั้นมาใช้เป็นพารามิเตอร์ num_words และ background ของ word cloud

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

กรณีศึกษา: การสร้างเว็บแอปพลิเคชันด้วย Shiny ใน R

ดูคอร์ส

คำแนะนำการฝึกหัด

โหลดแพ็กเกจที่จำเป็นทั้งหมดไว้แล้ว รวมถึง colourpicker โดยให้ดำเนินการดังนี้

  • เพิ่ม numeric input ที่มี ID ว่า "num", ค่าเริ่มต้นเป็น 100, และค่าต่ำสุดเป็น 5
  • เพิ่ม color input (จากแพ็กเกจ colourpicker) ที่มี ID ว่า "col", label ว่า "Background color", และค่าสีเริ่มต้นเป็น "white"
  • นำค่าจาก input ทั้งสองมาใช้กำหนดพารามิเตอร์ของ create_wordcloud() (บรรทัดที่ 16)

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

ui <- fluidPage(
  h1("Word Cloud"),
  # Add a numeric input for the number of words
  ___(inputId = ___, label = "Maximum number of words",
      value = ___, min = ___),
  # Add a color input for the background color
  ___(___),
  wordcloud2Output("cloud")
)

server <- function(input, output) {
  output$cloud <- renderWordcloud2({
    # Use the values from the two inputs as
    # parameters to the word cloud
    create_wordcloud(artofwar,
                     num_words = ___, background = ___)
  })
}

shinyApp(ui = ui, server = server)
แก้ไขและรันโค้ด