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

Highcharts在Chrome中宽度≥1727px时出现折线扭曲问题求解

问题根因

这个是Chrome 94~96版本的已知2D Canvas渲染精度bug,触发条件和设备像素比强相关:16英寸MacBook Pro的默认设备像素比为2,当图表宽度设置为1727px时,canvas实际绘制宽度为1727*2=3454px,刚好触发Chrome内部的坐标计算精度溢出,导致折线路径绘制扭曲,该问题仅出现在这几个版本的Chrome中,其他浏览器不受影响。

可行解决方法
  • 方案1:禁用Highcharts的Canvas加速渲染,强制走SVG绘制。在图表初始化配置中添加如下参数即可:
chart: {
  renderer: 'SVG'
},
plotOptions: {
  series: {
    boost: {
      enabled: false
    }
  }
}

优先推荐该方案,不受浏览器版本限制,适配所有场景,普通数据量级的折线图不会有明显性能损耗。

  • 方案2:调整setSize调用参数,强制触发全量重绘。将现有尺寸调整代码的第三个参数设为true,修改后代码如下:
document.getElementById('small').addEventListener('click', () => {
    chart.setSize(1726, 300, true);
});

document.getElementById('medium').addEventListener('click', () => {
    chart.setSize(1727, 300, true);
});

document.getElementById('large').addEventListener('click', () => {
    chart.setSize(1900, 300, true);
});

document.getElementById('xtraLarge').addEventListener('click', () => {
    chart.setSize(3900, 300, true);
});

该方案不需要修改图表初始化配置,适合临时修复场景。

  • 方案3:升级Chrome浏览器到97及以上正式版,该Canvas渲染bug已被Chrome官方在97版本中修复,升级后无需修改代码即可恢复正常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 22:15:03