วิธีสร้างแผนภูมิวงกลมใน ggplot2 (พร้อมตัวอย่าง)
แผนภูมิวงกลม เป็นแผนภูมิรูปวงกลมประเภทหนึ่งและใช้ส่วนต่างๆ เพื่อแสดงสัดส่วนของทั้งหมด
บทช่วยสอนนี้จะอธิบายวิธีสร้างและแก้ไขแผนภูมิวงกลมใน R โดยใช้ไลบรารีการแสดงภาพข้อมูล ggplot2
วิธีสร้างแผนภูมิวงกลมพื้นฐาน
รหัสต่อไปนี้แสดงวิธีสร้างแผนภูมิวงกลมพื้นฐานสำหรับชุดข้อมูลโดยใช้ ggplot2:
library (ggplot2) #create data frame data <- data.frame(" category " = c('A', 'B', 'C', 'D'), " amount " = c(25, 40, 27, 8)) #create pie chart ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 )
วิธีเปลี่ยนรูปลักษณ์ของแผนภูมิวงกลม
แผนภูมิวงกลมเริ่มต้นใน ggplot2 ค่อนข้างน่าเกลียด วิธีที่ง่ายที่สุดในการปรับปรุงรูปลักษณ์คือการใช้ theme_void() ซึ่งจะลบพื้นหลัง ตาราง และป้ายกำกับ:
ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 ) + theme_void()
เราสามารถปรับปรุงลักษณะที่ปรากฏของแผนภูมิเพิ่มเติมได้โดยการเพิ่มป้ายกำกับภายในส่วน:
ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 ) + geom_text( aes (label = paste0(amount, " % ")), position = position_stack(vjust= 0.5 )) + labs(x = NULL, y = NULL, fill = NULL)
เราสามารถปรับแต่งแผนภูมิเพิ่มเติมได้อีกโดยการระบุสีเลขฐานสิบหกของเราเองเพื่อใช้สำหรับส่วนต่างๆ ด้วยอาร์กิวเมนต์ scale_fill_manual() :
ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 ) + geom_text( aes (label = paste0(amount, " % ")), position = position_stack(vjust= 0.5 )) + labs(x = NULL, y = NULL, fill = NULL) + theme_classic() + theme(axis.line = element_blank(), axis.text = element_blank(), axis.ticks = element_blank()) + scale_fill_manual(values=c(" #FF5733 ", " #75FF33 ", " #33DBFF ", " #BD33FF "))
เคล็ดลับ: ใช้ ตัวเลือกสีฐานสิบหก นี้เพื่อค้นหาชุดค่าผสมของรหัสสีฐานสิบหกที่เข้ากันได้ดี
คุณยังสามารถปรับแต่งสีชิ้นได้โดยเลือก ระดับสีของผู้ผลิตเบียร์ ตัวอย่างเช่น นี่คือลักษณะของระดับสี “สีน้ำเงิน”:
ggplot(data, aes (x="", y=amount, fill=category)) + geom_bar(stat=" identity ", width= 1 ) + coord_polar(" y ", start= 0 ) + geom_text( aes (label = paste0(amount, " % ")), position = position_stack(vjust= 0.5 )) + labs(x = NULL, y = NULL) + theme_classic() + theme(axis.line = element_blank(), axis.text = element_blank(), axis.ticks = element_blank()) + scale_fill_brewer(palette=" Blues ")
แหล่งข้อมูลเพิ่มเติม
วิธีสร้าง boxplot ที่จัดกลุ่มใน R โดยใช้ ggplot2
วิธีสร้างแผนที่ความร้อนใน R โดยใช้ ggplot2
วิธีสร้างแผนภูมิแกนต์ใน R โดยใช้ ggplot2