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

Chart.js横向条形图值为2或相同时部分条形消失问题求助

问题分析与解决办法

结论

这是Chart.js 2.9.4版本的已知渲染bug,并非你的代码错误。

问题原因

在Chart.js 2.9.x系列的横向条形图(配置indexAxis: 'y'的条形图)中,当数据值为特定数值(比如你遇到的2)时,内部坐标计算逻辑会出现精度误差,导致Chromium内核浏览器(Chrome、Edge等)渲染时条形被压缩或完全不显示。

解决办法

你可以通过以下方式解决:

  • 升级Chart.js版本(推荐):直接升级到3.x及以上稳定版本,新版本修复了大量旧版本的渲染bug,同时优化了整体性能。注意3.x版本存在API变更,需调整部分配置(例如options.scales.yAxes要改为options.scales.y)。
  • 不升级版本的临时绕过方案:
    • 给触发问题的数值添加极小偏移,比如把值为2的数据改成2.0001,避开计算误差的临界值;
    • 调整y轴刻度内边距:在options.scales.yAxes[0].ticks中添加padding: 1,修正渲染时的坐标偏移;
    • 手动指定条形厚度:在options.scales.yAxes[0].barThickness中设置固定值(如10),强制条形的显示尺寸。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 07:07:02