未排序的数据

这个错误发生是因为在创建线性图或股票图时没有对数据进行排序,排序的要求是按照 x 轴线性递增或递减。

为了更好的性能,Highcharts 内部不会对数据进行排序,所以传入的数据需要先进行排序操作。

这里推荐使用 lodash 工具来进行排序,示例代码如下:

<script src="https://img.hcharts.cn/libs/lodash/dist/lodash.min.js"></script>
<script>
    var data = [{
        x: new Date('2017/02/03').getTime(),
        y: 100
    },{
        x: new Date('2017/02/01').getTime(),
        y: 89
    },{
        x: new Date('2017/02/02').getTime(),
        y: 121
    },{
        x: new Date('2017/02/04').getTime(),
        y: 102
    }];

    var sortData = _.sortBy(data, function(d) {
        return d.x
    });

    var chart = new Highcharts.StockChart('container', {
        series: [{
            data: sortData
        }]
    })
</script>

在线试一试