gpt4 book ai didi

javascript - Highcharts - setExtremes 后丢失数据

转载 作者:行者123 更新时间:2023-12-03 06:56:25 28 4
gpt4 key购买 nike

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

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

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. 当开始日期位于间隔开始/结束日期之间时,将不会显示间隔。

我将尝试深入研究 HighCharts 源代码以了解发生了什么,但我上面的示例仍然反射(reflect)了这个问题。

最佳答案

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

使用以下代码执行此操作:

data.sort(function(a, b) {
a = a.x2;
b = b.x2;
return a < b ? -1 : a > b ? 1 : 0;
});

然后将数据传递到图表 tantalizer 的 data 属性中。更新jsfiddle来反射(reflect)这一点。

关于javascript - Highcharts - setExtremes 后丢失数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37258961/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com