ggplot2 如何控制多个影射Legend 的顺序

生信宝典

2022-01-01 13:29

调整每个映射Legend 内部的顺序,如 cut 中 Fair,Good等的顺序,需要设置因子的水平,具体见:R语言学习 - 热图美化 (数值标准化和调整坐标轴顺序)

而如果有多个映射时,Legend 出现的顺序是不固定的。如果想固定或调整多个 legend的顺序,则可以通过guide_legend函数逐个指定,如下面代码所示:

library(ggplot2)
p1 <- ggplot(diamonds, aes(carat, price, colour = clarity, shape = cut)) +
geom_point() + guides(shape = guide_legend(order = 1), colour = guide_legend(order = 2))

p2 <- ggplot(diamonds, aes(carat, price, colour = clarity, shape = cut)) +
geom_point() + guides(colour = guide_legend(order = 1), shape = guide_legend(order = 2))

library(patchwork)

p1+p2


结果图比较效果如下,仔细看 Legend 和代码中的12

往期精品(点击图片直达文字对应教程)

机器学习

后台回复“生信宝典福利第一波”或点击阅读原文获取教程合集


浏览 27
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报