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

如何用ggplot2创建仅显示X轴的气泡图(消除Y轴冗余空间)

解决ggplot气泡图Y轴空间过大的问题

你可以通过限制Y轴可视范围+移除所有Y轴元素+调整绘图边距这三步来解决问题,修改后的代码如下:

ggplot(df, aes(x = range, y = new, size = numberPoints)) +
  geom_point(alpha = 0.5, shape = 19) +
  scale_size(range = c(.1, 24)) +
  # 隐藏Y轴刻度
  scale_y_continuous(breaks = NULL) +
  # 压缩Y轴可视范围,确保气泡仅在X轴上方显示
  coord_cartesian(ylim = c(0, 0.1)) +
  # 彻底移除Y轴的标签、刻度线、轴线等所有元素
  theme(
    axis.title.y = element_blank(),
    axis.text.y = element_blank(),
    axis.ticks.y = element_blank(),
    axis.line.y = element_blank(),
    # 微调绘图边距,消除多余空白
    plot.margin = margin(t = 5, r = 5, b = 10, l = 5, unit = "pt")
  )

关键细节说明:

  • coord_cartesian(ylim = c(0, 0.1)):这是安全限制Y轴显示范围的方式,不会过滤原始数据(如果用scale_y_continuous(limits=...),超出范围的数据会被丢弃,这里你的new值全为0,两种方法都能用,但coord_cartesian更通用),把Y轴压缩到仅能容纳气泡的小范围,避免上下出现冗余空间。
  • theme中的参数:彻底清除Y轴的所有可见元素,让图表只保留X轴和气泡。
  • 如果气泡仍有顶部留白,可将ylim的上限调小(比如0.05),或者调整plot.margin的t(顶部)参数值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 18:15:51