如何在Chart.js中配置Y轴:固定步长15且最大值为45
解决Chart.js Y轴固定最大值与步长的问题
你的问题出在**maxTicksLimit的误用**——这个配置是用来限制Y轴最多显示多少个刻度,不是设置Y轴的最大值,所以才会出现最大值随数据变化、步长不符合预期的情况。
要实现步长15且始终显示最大值45的需求,你需要做以下调整:
针对Chart.js v2版本(你的代码写法对应v2)
直接在ticks配置里设置max: 45(强制Y轴最大值),同时保留stepSize: 15,还可以可选设置min: 0确保刻度从0开始:
options: { scales: { yAxes: [{ display: true, ticks: { min: 0, // 可选,根据需求决定是否从0开始 max: 45, // 强制Y轴最大值为45 stepSize: 15, // 步长设为15 autoSkip: false // 可选,确保所有刻度都显示,避免自动跳过 } }] }, }
针对Chart.js v3+版本(新版本配置结构变更)
v3+版本把yAxes数组改成了scales.y对象,配置写法如下:
options: { scales: { y: { display: true, ticks: { min: 0, max: 45, stepSize: 15, autoSkip: false } } } }
这样配置后,不管你的数据最大值是多少,Y轴都会固定显示0、15、30、45这几个刻度,步长保持15,最大值始终为45。
内容的提问来源于stack exchange,提问作者dodolap
相关产品推荐
相关产品推荐

