ลองใช้ Waffle Chart ดูบ้างไหม?
ถ้าอยากดูรายละเอียดของกลุ่ม 'other' ล่ะ?
ลองเปลี่ยนมาใช้ waffle chart แทน เพราะรองรับได้หลายกลุ่มกว่า เราจะใช้ pipeline การจัดการข้อมูลเดิมจากแบบฝึกหัดที่แล้ว แต่คราวนี้เก็บข้อมูลโรคทุกประเภทไว้ครบ
เราจะใช้ไลบรารี waffle ซึ่งมีฟังก์ชัน waffle() อยู่ภายใน ฟังก์ชันนี้จะสร้าง waffle chart ให้เมื่อรับ named vector ของจำนวนนับเข้าไป
โดยจะวาดหนึ่งช่องสำหรับแต่ละหน่วยใน vector ดังนั้นจึงต้องแปลงจำนวนนับของแต่ละโรคให้เป็นเปอร์เซ็นต์แบบปัดเศษ (ดูได้จากคำสั่ง mutate() ในโค้ดจัดการข้อมูลที่เตรียมไว้ให้)
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
แนวทางปฏิบัติที่ดีที่สุดสำหรับการสร้างภาพข้อมูลใน R
คำแนะนำการฝึกหัด
- กำหนดชื่อให้กับ vector
case_countsโดยใช้ฟังก์ชันnames() - เรียกใช้ฟังก์ชัน
waffle()จากไลบรารีwaffleโดยส่ง vectorcase_countsเป็น argument
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
disease_counts <- who_disease %>%
group_by(disease) %>%
summarise(total_cases = sum(cases)) %>%
mutate(percent = round(total_cases/sum(total_cases)*100))
# Create an array of rounded percentages for diseases.
case_counts <- disease_counts$percent
# Name the percentage array with disease_counts$disease
___
# Pass case_counts vector to the waffle function to plot
waffle(___)