
在 Chart.js 3.0+ 版本中,轴标题需通过 scales.x.title 和 scales.y.title 配置,旧版 xAxes/yAxes 数组语法及 scaleLabel 已废弃,直接迁移会导致标题不显示。
在 chart.js 3.0+ 版本中,轴标题需通过 `scales.x.title` 和 `scales.y.title` 配置,旧版 `xaxes`/`yaxes` 数组语法及 `scalelabel` 已废弃,直接迁移会导致标题不显示。
Chart.js 自 v3.0.0 起进行了重大 API 重构,其中坐标轴配置体系全面升级:不再使用 xAxes/yAxes 数组形式,而是采用扁平化的 x 和 y 单对象键名;同时,轴标题(Axis Title)不再通过 scaleLabel 属性设置,而统一由 title 配置项控制。
✅ 正确配置方式如下(适用于 v3.x 及以上):
详细的 Three.js 3D 图形参考,涵盖场景设置、相机、几何体、材质、光照、动画、控制器、加载器、数学工具和调试。
var myChart0 = new Chart("myChart0", {
type: "line",
data: {
labels: ["Jan", "Feb", "Mar", "Apr"],
datasets: [{
label: "Sales",
data: [12, 19, 3, 5],
borderColor: "red",
borderWidth: 2,
tension: 0,
fill: false
}]
},
options: {
responsive: true,
plugins: {
legend: {
position: "bottom"
}
},
scales: {
x: {
display: true,
title: {
display: true,
text: "Month", // ✅ X 轴标题文字
font: { size: 14 }, // 可选:自定义字体大小
padding: { top: 10 } // 可选:标题与刻度间距
}
},
y: {
display: true,
title: {
display: true,
text: "Revenue ($)", // ✅ Y 轴标题文字
font: { size: 14 }
}
}
}
}
});⚠️ 注意事项:
- scales.xAxes 和 scales.yAxes 在 v3+ 中完全无效,使用将导致静默失败或意外渲染(如重复 Y 轴);
- legend 已移至 plugins 下,独立于 options 顶层配置(原 options.legend 已弃用);
- 若图表未响应式,请确保容器 <canvas id="myChart0"></canvas> 的父元素具有明确宽度(Chart.js v3 默认依赖 CSS 宽高);
- 标题默认垂直居中对齐;如需调整位置,可配合 align(start/center/end)和 padding 精细控制。
? 小结:从 Chart.js v2 升级到 v3 时,务必查阅官方迁移指南,重点关注 scales、plugins 和 layout 等模块的结构变更——正确使用 scales.x.title 和 scales.y.title 是实现轴标签显示的关键一步。

















