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

การสร้างแผนที่แสดงผู้ชนะการเลือกตั้งวุฒิสภา

ในการเลือกตั้งกลางเทอมปี 2018 มีที่นั่งในวุฒิสภาทั้งหมด 33 ที่นั่งที่เปิดรับการเลือกตั้ง (บวกกับการเลือกตั้งพิเศษอีก 2 ครั้งซึ่งจะไม่นำมาพิจารณาในแบบฝึกหัดนี้) โจทย์คือการสร้างแผนที่ choropleth โดยใช้พรรคการเมืองของผู้ชนะเป็นตัวกำหนดสีของแต่ละรัฐ

การทำเช่นนี้จำเป็นต้องแมป factor เข้ากับสีพื้น อย่างไรก็ตาม aesthetic z รับเฉพาะตัวแปรเชิงตัวเลข วิธีแก้ที่ง่ายที่สุดคือแปลง party ให้เป็นตัวแปรเชิงตัวเลขผ่าน as.numeric(party) แล้วระบุสีที่ต้องการด้วยตนเองใน add_trace() นอกจากนี้ colorbar ที่แสดงอยู่ไม่มีประโยชน์มากนัก สามารถลบออกได้โดยเพิ่ม layer hide_colorbar()

data frame senate_winners และ plotly ถูกโหลดไว้ให้แล้ว

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

การสร้างกราฟิกแบบโต้ตอบด้วย plotly ใน R

ดูคอร์ส

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

  • สร้างแผนที่ choropleth ที่ใช้สีของแต่ละรัฐแทนพรรคการเมืองที่ชนะการเลือกตั้ง
  • ใน add_trace() ให้ระบุสี "dodgerblue", "mediumseagreen" และ "tomato" ด้วยตนเอง (ตามลำดับนี้)
  • เติมข้อความ hover info ให้ครบโดยใช้ชื่อคอลัมน์ที่เหมาะสม

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

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

# Create a choropleth map displaying the Senate results
senate_winners %>%
  plot_geo(locationmode = ___) %>%
  add_trace(___, ___,
    ___ = ___(___, ___, ___),
    hoverinfo = "text",
    text = ~paste("Candidate:", ___, "
", "Party:", ___, "
", "% vote:", round(___, 1)) ) %>% layout(geo = list(scope = 'usa')) %>% hide_colorbar()
แก้ไขและรันโค้ด