ข้อมูล:
df <- data.frame(
type = c("T", "F", "P", "T", "F", "P", "T", "F", "P", "T", "F", "P"),
size = c("50%", "50%", "50%", "100%", "100%", "100%", "150%", "150%", "150%", "200%", "200%", "200%"),
amount = c(48.4, 48.1, 46.8, 25.9, 26, 24.9, 21.1, 21.4, 20.1, 20.8, 21.5, 16.5)
)
ฉันต้องการพล็อตกราฟแท่งของข้อมูลข้างต้นโดยใช้ ggplot (แกน x -> type
, แกน y -> amount
, จัดกลุ่มตามsize
) เมื่อฉันใช้รหัสต่อไปนี้ฉันไม่ได้รับตัวแปรtype
และตามsize
ลำดับที่แสดงในข้อมูล โปรดดูรูป ฉันใช้รหัสต่อไปนี้สำหรับสิ่งนั้น
ggplot(df, aes(type, amount , fill=type, group=type, shape=type, facets=size)) +
geom_bar(width=0.5, position = position_dodge(width=0.6)) +
facet_grid(.~size) +
theme_bw() +
scale_fill_manual(values = c("darkblue","steelblue1","steelblue4"),
labels = c("T", "F", "P"))
.
สำหรับการแก้ไขปัญหาการสั่งซื้อฉันได้ใช้วิธีการแยกตัวประกอบสำหรับตัวแปร "type" โดยใช้สิ่งต่อไปนี้ โปรดดูรูปด้วย
temp$new = factor(temp$type, levels=c("T","F","P"), labels=c("T","F","P"))
size
แต่ตอนนี้ผมไม่ทราบวิธีการแก้ไขคำสั่งซื้อสำหรับตัวแปร ควรเป็น 50%, 100% 150% และ 200%