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

修复Chart.js柱状图X轴错误:实现时间刻度居中显示

解决时间刻度显示在网格线中间的问题

要让时间刻度显示在网格线中间,同时修复第一个柱子被Y轴截断的问题,你需要修改Chart.js配置中的X轴设置:

  1. 在xAxes对象中添加offset: true,让柱子相对于刻度居中对齐
  2. 显式设置gridLines.offsetGridLines: true,确保网格线偏移到刻度之间

修改后的X轴配置

xAxes: [{
    ticks: {
        autoSkip: true,
        maxTicksLimit: 14,
        max: max,
        min: min
    },
    scaleLabel: {
        display: true
    },
    type: "time",
    time: {
        unit: "minute",
        displayFormats: {
            minute: stime
        },
        stepSize: gGraphCardXAxisPeriod[cardNo],
        tooltipFormat: "YYYY/MM/DD HH:mm:ss"
    },
    position: "bottom",
    offset: true, // 新增:让柱子居中于刻度
    gridLines: {
        offsetGridLines: true // 显式设置:网格线偏移到刻度之间
    }
}]

可选:修复柱子截断问题

如果第一个柱子仍有部分被截断,可增加图表左侧内边距:

layout: {
    padding: {
        bottom: -26,
        left: 10 // 新增左侧内边距
    },
},

完成上述修改后,时间刻度会显示在网格线中间,第一个柱子也能完整显示,与你提供的示例图效果一致。

内容的提问来源于stack exchange,提问作者Bích Thảo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 21:54:56