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

如何修改ggscatter的X/Y轴刻度,避免出现非整数刻度?

解决ggscatter坐标轴出现非整数刻度的问题

要避免ggscatter生成的坐标轴出现2.5、7.5这类非整数刻度,只需在绘图代码后添加ggplot2的轴刻度控制函数,指定仅显示整数刻度即可。

修改后的代码示例

library(ggpubr)

X_AXIS = sample(c(1:10),size = 100, replace = TRUE)
Y_AXIS = sample(c(1:10),size = 100, replace = TRUE)

novaTabela = data.frame(X_AXIS, Y_AXIS)

# 手动指定整数刻度
ggscatter(novaTabela, x = "X_AXIS", y = "Y_AXIS", 
          add = "reg.line", 
          cor.coef = TRUE, cor.method = "pearson") +
  scale_x_continuous(breaks = c(0, 5, 10)) +
  scale_y_continuous(breaks = c(0, 5, 10))

灵活调整刻度的方法

如果不想手动逐个指定刻度,可以用scales包的breaks_width函数自动生成间隔固定的整数刻度,比如间隔为2:

ggscatter(novaTabela, x = "X_AXIS", y = "Y_AXIS", 
          add = "reg.line", 
          cor.coef = TRUE, cor.method = "pearson") +
  scale_x_continuous(breaks = scales::breaks_width(2)) +
  scale_y_continuous(breaks = scales::breaks_width(2))

这段代码会自动生成0,2,4,6,8,10这类整数刻度,你可以根据需求修改breaks_width里的数值(比如改成3,就会生成0,3,6,9)。

关键说明

  • scale_x_continuous和scale_y_continuous是ggplot2的核心函数,用于控制连续型坐标轴的显示规则
  • breaks参数直接定义要显示的刻度值,必须传入整数向量,就能彻底避免非整数刻度出现

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 06:18:28