You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ggplot2中复刻Base R散点图并反转Y轴?

解决ggplot2中QS排名散点图的Y轴反转与样式问题

核心解决方案代码

library(ggplot2)

# 绘制散点图并调整Y轴
ggplot(ranking_data, aes(x = academic_reputation, y = rank)) +
  geom_point() +
  # 反转Y轴,设置刻度与范围
  scale_y_reverse(
    breaks = seq(1, 100, by = 10),  # 按间隔10显示刻度,可按需修改by值
    limits = c(100, 1),             # 锁定Y轴范围为100(底部)到1(顶部)
    name = "QS 2024世界大学排名"    # 自定义Y轴标题
  ) +
  # 可选:调整Y轴文本样式,避免重叠或显示异常
  theme(axis.text.y = element_text(angle = 0, vjust = 0.5))

关键参数说明

  • scale_y_reverse():直接反转Y轴方向,让排名第1的大学位于图的顶部,排名100的位于底部,符合排名类数据的直观展示逻辑。
  • breaks:控制Y轴刻度的显示间隔,因为是TOP100离散排名,设置整数间隔避免刻度过于密集。
  • limits:明确指定Y轴上下限,确保图表范围完全覆盖TOP100的排名区间。
  • theme(axis.text.y):可选调整项,优化Y轴文本的对齐方式与显示角度,避免因刻度过多导致的重叠问题。

额外样式优化(可选)

如果需要进一步调整Y轴的视觉样式,比如加粗标题、修改刻度颜色,可以添加以下theme设置:

+ theme(
    axis.title.y = element_text(size = 12, face = "bold"),
    axis.text.y = element_text(size = 10, color = "#333333"),
    axis.line.y = element_line(color = "black", linewidth = 0.8)
  )

内容的提问来源于stack exchange,提问作者sul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 11:56:06