สมมติว่าฉันมี ggplot ที่มีมากกว่าหนึ่งตำนาน
mov <- subset(movies, length != "")
(p0 <- ggplot(mov, aes(year, rating, colour = length, shape = mpaa)) +
geom_point()
)
ฉันสามารถปิดการแสดงตำนานทั้งหมดเช่นนี้:
(p1 <- p0 + theme(legend.position = "none"))
การส่งผ่านshow_guide = FALSE
ไปยังgeom_point
(ตามคำถามนี้ ) จะปิดตำนานรูปร่าง
(p2 <- ggplot(mov, aes(year, rating, colour = length, shape = mpaa)) +
geom_point(show_guide = FALSE)
)
แต่ถ้าฉันต้องการปิดตำนานสีแทน? ดูเหมือนจะไม่มีวิธีบอกเล่าshow_guide
ตำนานที่ใช้พฤติกรรมของมันกับ และไม่มีshow_guide
ข้อโต้แย้งสำหรับตาชั่งหรือสุนทรียภาพ
(p3 <- ggplot(mov, aes(year, rating, colour = length, shape = mpaa)) +
scale_colour_discrete(show_guide = FALSE) +
geom_point()
)
# Error in discrete_scale
(p4 <- ggplot(mov, aes(year, rating, shape = mpaa)) +
aes(colour = length, show_guide = FALSE) +
geom_point()
)
#draws both legends
คำถามนี้แสดงให้เห็นว่าวิธีการควบคุมตำนานที่ทันสมัย (ตั้งแต่ ggplot2 v0.9.2) อยู่ที่guides
ฟังก์ชัน
ฉันต้องการที่จะทำอะไรบางอย่างเช่น
p0 + guides(
colour = guide_legend(show = FALSE)
)
แต่guide_legend
ไม่มีอาร์กิวเมนต์สำหรับการแสดง
ฉันจะระบุตำนานที่จะแสดงได้อย่างไร
ggplot2
อัปเดตได้รับการคัดค้านและถูกแทนที่ด้วยshow_guide
show.legend