วิธีพล็อตค่าเฉลี่ยด้วย geom_bar() ใน ggplot2
คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อพล็อตค่าเฉลี่ยตามกลุ่มโดยใช้ฟังก์ชัน geom_bar() ใน ggplot2:
library (ggplot2) ggplot(df, aes(group_var, values_var)) + geom_bar(position=' dodge ', stat=' summary ', fun=' mean ')
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
หมายเหตุ : อาร์กิวเมนต์ fun ใน geom_bar() บอก ggplot2 ว่าสถิติเชิงพรรณนาใดที่จะแสดงโดยใช้แท่ง คุณยังสามารถส่งผ่านสถิติเชิงพรรณนาอื่นๆ เช่น “ค่ามัธยฐาน” ไปยังอาร์กิวเมนต์นี้เพื่อพล็อตค่ามัธยฐานตามกลุ่ม
ตัวอย่าง: การพล็อตค่าเฉลี่ยด้วย geom_bar() ใน ggplot2
สมมติว่าเรามีกรอบข้อมูลต่อไปนี้ซึ่งมีข้อมูลเกี่ยวกับจำนวนคะแนนที่ผู้เล่นบาสเก็ตบอลจากทีมต่างๆ ทำไว้:
#create data frame df <- data. frame (team=rep(c(' A ', ' B ', ' C '), each= 4 ), points=c(3, 5, 5, 6, 5, 7, 7, 8, 9, 9, 9, 8)) #view data frame df team points 1 to 3 2 to 5 3 to 5 4 to 6 5 B 5 6 B 7 7 B 7 8 B 8 9 C 9 10 C 9 11 C 9 12 C 8
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อสร้างแผนภูมิแท่งโดยแต่ละแท่งแสดงถึงค่า จุด เฉลี่ย โดยจัดกลุ่มตาม ทีม :
library (ggplot2) #create bar plot to visualize mean points value by team ggplot(df, aes(team, points)) + geom_bar(position=' dodge ', stat=' summary ', fun=' mean ')
ความสูงของแต่ละแท่งแสดงถึงค่า คะแนน เฉลี่ยของแต่ละ ทีม
ในการแสดงค่าคะแนนเฉลี่ยจริงของแต่ละทีม เราสามารถใช้ฟังก์ชัน summarise() จากแพ็คเกจ dplyr :
library (dplyr) #calculate mean value of points, grouped by team df %>% group_by(team) %>% summarise(mean_pts = mean(points, na. rm = TRUE )) # A tibble: 3 x 2 team mean_pts 1 to 4.75 2 B 6.75 3 C 8.75
จากผลลัพธ์เราจะเห็นค่าคะแนนเฉลี่ยของแต่ละทีม:
- ทีมเอ: 4.75
- ทีม B: 6.75
- ทีม C: 8.75
ค่าเหล่านี้สอดคล้องกับความสูงของแท่งที่แสดงในแผนภูมิแท่งด้านบน
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน ggplot2:
วิธีปรับช่องว่างระหว่างแท่งใน ggplot2
วิธีลบ NA ออกจากพล็อตใน ggplot2
วิธีเปลี่ยนสีของแถบในแผนภูมิ Stacked Bart ใน ggplot2