highstock.js日期范围不到一小时不起作用

时间:2017-10-24 03:11:28

标签: javascript highcharts highstock

我正在使用hightstocks.js我似乎无法获得不到一小时工作的任何日期范围。让我们说我想选择30分钟的数据,图表变成空白。我的数据以1分钟为增量,所以我应该能够做到这一点。我想做15分钟范围和30分钟范围。如果我做任何超过一小时的范围,图表就可以正常工作。

这是我的数据示例。

[1508459821000, 0.000244, 0.000244, 0.00024399, 0.00024399],
[1508459882000, 0.0002441, 0.0002442, 0.000244, 0.000244],
[1508459942000, 0.0002442, 0.0002442, 0.0002442, 0.0002442],
[1508460061000, 0.0002442, 0.0002442, 0.0002442, 0.0002442],
[1508460122000, 0.00024492, 0.00024494, 0.0002442, 0.00024],

我的代码示例

  // 
   datas = [].concat(data, [[Date.UTC(2011, 9, 14, 19, 59), null, null, null, null]]); 
   create the chart
        Highcharts.stockChart('chart', {
            chart: {
                type: 'candlestick',
                zoomType: 'x'
            },

            navigator: {
                adaptToUpdatedData: true,
                series: {
                    data: data
                }
            },

            scrollbar: {
                liveRedraw: false
            },

            rangeSelector: {
                buttons: [
                    {
                        type: 'minute',
                        count: 15,
                        text: '15m'
                    },
                    {
                        type: 'minute',
                        count: 30,
                        text: '30m'
                    },
                    {
                        type: 'hour',
                        count: 1,
                        text: '1h'
                    }],
                    inputEnabled: false, // it supports only days
                    selected: 4 // all

            },

            xAxis: {
                events: {
                    afterSetExtremes: afterSetExtremes
                },
            },

            yAxis: {

                labels: {

                    color: '#fffff',

                    formatter: function () {
                        return Number(this.value).toFixed(8);
                    }
                },

                floor: 0
            },



            tooltip: {
                pointFormat: "{point.y:.8f} BTC"
            },


            series: [{
                data: data,
                dataGrouping: {
                    enabled: false
                }
            }]
        });

2 个答案:

答案 0 :(得分:0)

由于您的数据以分钟计算,即使标签为1h

,也应将其用作分钟
{
type: 'minute',
count: 60, // not 1
text: '1h'
}

答案 1 :(得分:0)

我发现了我的问题。

datas = [].concat(data, [[Date.UTC(2011, 9, 14, 19, 59), null, null, null, null]]);

我在结束日期添加了null,我使用了Date.UTC。我的服务器在MST上运行。我只需要取下.UTC就开始工作了。