Highcharts中的错误,数据中的负数似乎会导致图形绘制出错

时间:2014-03-22 21:59:08

标签: highcharts

我似乎发现了一个绘图错误,请看这个示例:http://jsfiddle.net/MrSteve/Smu6r/

来源数据:

<script src="http://gosargon.com/iconectiv/portWon.js"></script>

使用Javascript:

$('#container').highcharts('StockChart', {

    chart: { },
    credits: {
            enabled: true
        },
    yAxis: {
        startOnTick: false,
        endOnTick: false,
        min: -20000,
        max: 20000,
        plotBands: [{
            from: 0,
            to: 60000,
            color: 'white'
        }, {
            from: -60000,
            to: 0,
            color: 'rgba(68, 170, 213, 0.1)'
        }]
    },
    rangeSelector: {
        buttonTheme: { // styles for the buttons
            fill: 'none',
            stroke: 'none',
                'stroke-width': 0,
            r: 8,
            style: {
                color: '#039',
                fontWeight: 'bold'
            },
            states: {
                hover: {},
                select: {
                    fill: '#039',
                    style: {
                        color: 'white'
                    }
                }
            }
        },
        inputBoxBorderColor: 'gray',
        inputBoxWidth: 120,
        inputBoxHeight: 18,
        inputStyle: {
            color: '#039',
            fontWeight: 'bold'
        },
        labelStyle: {
            color: 'silver',
            fontWeight: 'bold'
        },
        selected: 1
    },

    series: [{
        name: 'Net',
        data: portsNetData
    }
            ]
});

});

查看3月的前几天,悬停显示所有正数(按照json数据),但该线采用低于零的奇怪下降,类似于1/27 -7661值,但是在3月的X部分轴。我在Chrome,Safari和Firefox中看到了同样的问题。

问题似乎与负数据值有关。当我删除它们时,问题就消失了。

建议和帮助欢迎。

谢谢, 史蒂夫

1 个答案:

答案 0 :(得分:2)

如果你检查javascript是否有错误,你会看到这个:

http://www.highcharts.com/errors/15

  

Highcharts期望对数据进行排序

     

当您尝试创建折线系列或股票时会发生这种情况   图表,其中数据未按升序X顺序排序。对于   性能原因,Highcharts不对数据进行排序,而是对数据进行排序   要求实施者预先对数据进行排序。

这似乎有误导性,因为乍一看你的数据看起来很好。

但是,带有Date.UTC功能,月份为零所以您的某些日期就像

Date.UTC(2014,01,31)  // this is February the 31st!?!

没有任何意义,Date.UTC是trying to make meaning out of them