我正在努力让我的数据按月分组。我甚至已经编程方式过滤我的数据,只返回该月的最后一天并计算每月的价值。我试图在'dataGrouping'属性上找到一个很好的解释但是没有运气理解它也没有正确实现它。每个结果都会在每日间隔内返回我的系列。
我的问题如下:
对此有任何帮助非常赞赏。
答案 0 :(得分:8)
您使用HighStock图表吗?
如果是的话......
当然,需要大量数据才能进行分组。如果启用了数据分组选项,Highstock会自动处理每个分组模式之间的切换。因此,如果您没有大量数据,则无法使用默认设置
因此,如果要在默认情况下进行分组,则需要强制进行分组。
series:[{
[...]
dataGrouping: {
approximation: "sum",
enabled: true,
forced: true,
units: [['month',[1]]]
}
}]
修改强>
这是一个工作示例演示(基本highstock演示的分支) http://jsfiddle.net/NcNvu/
希望它有所帮助! 问候
答案 1 :(得分:1)
我们尝试了围绕此问题,我们使用Highstock' s(Splinechart)RangeSelector,事件和DataGrouping。点击每周rangeselectorButton,我们通过setExtremes捕获此事件。发布事件后,将其近似为" sum"。如果您使用两个系列而不是迭代该对象。目前每周进行一次只需使用相应的UNIT将其延长为每月
events: {
setExtremes: function (e) {
if (e.rangeSelectorButton != undefined) {
var triger = e.rangeSelectorButton;
if (triger.type == 'week') {
$.each(this.series, function (index, obj) {
obj.options.dataGrouping.units[0] = ['week', [1]];
});
} else if (triger.type == 'day') {
$.each(this.series, function (index, obj) {
obj.options.dataGrouping.units[0] = ['day', [1]];
});
}
}
}
},