如何在R语言ggplot2中反转Y轴数值,实现轴向上数值递减
操作方案
你需要的Y轴反转效果可以通过ggplot2内置的scale_y_reverse()函数实现,操作非常简单:
如果只需要默认反转Y轴排序,直接在现有绘图代码末尾追加该图层即可;如果你需要固定Y轴的数值范围,让顶部显示16、底部显示26,直接在函数内指定limits参数即可。
修改后的完整代码(已修正你原代码中缺失的右括号语法问题):
library(ggplot2) library(ggrepel) ggplot(data=data_diff, aes(Sum.of.Diff, Sum.of.Against.Total)) + geom_point(alpha=1) + ggtitle("Data Diff") + geom_label_repel(data=subset(data_diff, Sum.of.Against.Total> 0 | Sum.of.Diff > 0 | Sum.of.Diff < 0), aes(label=Name), box.padding = 0.5, point.padding = .11, segment.color = 'black') + xlab("Sum of Diff") + ylab("Sum of Against Stats Total") + scale_y_reverse(limits = c(26, 16)) # 追加这一行即可实现要求的Y轴效果
补充说明:
- 如果你不需要固定Y轴范围,去掉
limits = c(26, 16)参数即可,函数会自动根据你的数据集Sum.of.Against.Total字段的取值范围做反转 - 如果后续需要反转X轴,替换成
scale_x_reverse()即可生效
内容的提问来源于stack exchange,提问作者Brock Blahous
相关产品推荐
相关产品推荐

