Highcharts - setExtremes之后缺少数据

时间:2016-05-16 16:41:11

标签: javascript highcharts

我正在努力更新插件以允许Highcharts充当甘特图。除了我将xaxis的极值设置为新的开始/结束时,一切正常,并且在某些情况下,图表缺少该范围内的数据。

有些时候,图表会在一个月的月份范围内错过数据,但是当您更改为两个月时,数据会神奇地显示为与两个月重叠。在以下示例中,我将其设置为显示2016年5月1日至2016年12月30日之间的所有数据。当您将开始月份更改为2016年6月1日时,所有数据点都将丢失。

Example

我认为经过更多测试后,它围绕当前日期。但是,在初始化HighCharts时我没有任何限制:

// THE CHART
$('#container').highcharts({
  chart: {
    type: 'xrange'
  },
  title: {
    text: 'Highcharts X-range study'
  },
  xAxis: {
    type: 'datetime'
  },
  yAxis: {
    title: '',
    categories: ['1', '2', '3', '4', '5', '6', ,'7', '8']
  },
  series: [{
    name: 'Project 1',
    // pointPadding: 0,
    // groupPadding: 0,
    borderRadius: 5,
    pointWidth: 10,
    /*more data in jsfiddle*/
        data: [{"label":"1","x":1462147200000,"x2":1464739200000,"y":1,"color":"#999"},{"label":"1","x":1464825600000,"x2":1467331200000,"y":1,"color":"#999"},{"label":"1","x":1467417600000,"x2":1470009600000,"y":1,"color":"#999"} ]
       }]
    });

起初我认为这将是一个限制约束,但我能够显示所有数据而没有问题(从日期输入中删除默认值)。有什么想法吗?如果您需要更多信息,请与我们联系。

提前致谢!

更新

经过进一步测试后,似乎在使用极限设置时数据仍然缺失,无论数据是否排序,它都不是那么极端。我目前在以下情况中看到了丢失的数据:

  1. 当开始日期介于间隔开始/结束日期之间时,则不会显示间隔。
  2. 我将尝试深入了解HighCharts来源,看看发生了什么,但我上面的例子仍然反映了这个问题。

1 个答案:

答案 0 :(得分:1)

事实证明我必须在初始化图表之前对数据进行排序。

使用以下代码完成此操作:

{{1}}

然后将数据传递到图表tantalizer的data属性中。更新了jsfiddle以反映这一点。