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

如何用(x,y)点绘制折线图?Chart.js点全在x=0问题求助

解决Chart.js折线图所有点集中在x=0位置的问题

问题出在Chart.js的默认x轴配置上:默认x轴类型是category,它会将你数据中的x值当作分类标签而非数值处理,导致所有数据点都被映射到第一个分类位置(视觉上的x=0处)。

解决方法很简单,在配置中添加options字段,将x轴的type设置为'linear',让Chart.js按数值解析x坐标:

new Chart(canvasId,{
    type: 'line',
    data: {
        datasets: [
            {
                label: 'Some Data',
                data: [
                    { x: 0, y: 2.344317674636841 },
                    { x: 9, y: 2.2913742065429688 },
                    { x: 19, y: 2.2962939739227295 },
                    { x: 29, y: 2.26206374168396 },
                    { x: 39, y: 2.2287118434906006 },
                    { x: 49, y: 2.1946732997894287 },
                    { x: 59, y: 2.192193031311035 },
                    { x: 69, y: 2.1846773624420166 },
                    { x: 79, y: 2.122765064239502 },
                    { x: 89, y: 2.1172447204589844 },
                    { x: 99, y: 2.125208616256714 },
                ]
            },
        ]
    },
    options: {
        scales: {
            x: {
                type: 'linear' // 指定x轴为数值型线性轴
            }
        }
    }
});

这样配置后,x轴会根据数据中的数值自动计算刻度,数据点也会对应到正确的x位置上。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 02:05:26