Highcharts不渲染小数据集

时间:2013-02-15 16:03:25

标签: javascript highcharts highstock

我有一个我想渲染的数据集,这主要是为了探索控件。但是,我注意到如果我渲染的数据只有几个小时,那么图表就不会绘制任何东西。如果我在几天内跨越数据,那么它将绘制。我已经尝试调整tickInterval (5)pointInterval (3600 * 1000),但我似乎无法将其绘制。有人可以提出任何可能的建议吗谢谢!

window.chart = new Highcharts.StockChart({
    chart: {
        renderTo: 'container',
        zoomType: 'x'
    },
    rangeSelector: {
        selected: 1
    },

    title: {
        text: 'AAPL Stock Price'
    },
    xAxis: {
        type: 'datetime',
        pointInterval: 1000
    },

    series: [{
        name: 'AAPL Stock Price',
        data: [
                [Date.UTC(2006, 0, 29, 0, 0, 0), 30.14],
                [Date.UTC(2006, 0, 29, 0, 0, 0), 33.11],
                [Date.UTC(2006, 0, 29, 1, 0, 0), 34.76],
                [Date.UTC(2006, 0, 29, 1, 0, 0), 23.12],
                [Date.UTC(2006, 0, 29, 2, 0, 0), 34.34],
                [Date.UTC(2006, 0, 29, 2, 0, 0), 34.48],
                [Date.UTC(2006, 0, 29, 3, 0, 0), 33.9],
                [Date.UTC(2006, 0, 29, 3, 0, 0), 14.72]
            ]
    }]
});

3 个答案:

答案 0 :(得分:1)

您有same x-value的多个数据点:

[Date.UTC(2006, 0, 29, 0, 0, 0), 30.14],
[Date.UTC(2006, 0, 29, 0, 0, 0), 33.11],

这些都是从2006年1月29日午夜开始的。如果你制作它们all distinct times,它将呈现。

答案 1 :(得分:1)

如果您想在同一日期绘制数据点,也可以创建一个附加系列。

series: [
{
    name: 'AAPL Stock Price',
    data: [
        [Date.UTC(2006, 0, 29, 0, 0, 0), 30.14],
        [Date.UTC(2006, 0, 29, 1, 0, 0), 34.76],
        [Date.UTC(2006, 0, 29, 2, 0, 0), 34.34],
        [Date.UTC(2006, 0, 29, 3, 0, 0), 33.9]
    ]
},{
    name: 'AAPL Stock Price 2',
    data: [
        [Date.UTC(2006, 0, 29, 0, 0, 0), 33.11],
        [Date.UTC(2006, 0, 29, 1, 0, 0), 23.12],
        [Date.UTC(2006, 0, 29, 2, 0, 0), 34.48],
        [Date.UTC(2006, 0, 29, 3, 0, 0), 14.72]
    ]
}]

答案 2 :(得分:0)