Highcharts 高股票数据分组期权

Highcharts 高股票数据分组期权,highcharts,highstock,Highcharts,Highstock,我已经阅读了highstock datagrouping documenation(),但是对于这个数据分组选项我不太清楚,我注意到的是,highstock中默认启用了数据分组,我们可以通过在datagrouping中通过units选项提供自定义数据分组选项来强制进行数据分组,我的疑问是,highstock中的默认数据分组(默认单位选项)是哪一个,另一个疑问是,我们是否需要在图表中显示每个时间间隔的数据分组单位(例如,如果选择的数据范围为一个月,分组应按1天进行,如果选择的日期范围为一天,则表示

我已经阅读了highstock datagrouping documenation(),但是对于这个数据分组选项我不太清楚,我注意到的是,highstock中默认启用了数据分组,我们可以通过在datagrouping中通过units选项提供自定义数据分组选项来强制进行数据分组,我的疑问是,highstock中的默认数据分组(默认单位选项)是哪一个,另一个疑问是,我们是否需要在图表中显示每个时间间隔的数据分组单位(例如,如果选择的数据范围为一个月,分组应按1天进行,如果选择的日期范围为一天,则表示数据分组单位应按小时进行)

我们需要指定每个单位还是需要根据选择的日期范围动态更改单位

这就是我所做的,基于用户选择的日期范围分组单位应该更改,我们是否需要基于所选的日期范围指定单位以及单位数组指定的单位(仅提供一个单位作为分组的选项是功能,或者可以基于时间戳选择单位数组选项)

编辑 而强制选项设置为false

这是highstock中的默认数据分组(默认单位选项)

units
部分的API()中有一个小缺陷。首先,它说它默认为:

units: [[
    'millisecond', // unit name
    [1, 2, 5, 10, 20, 25, 50, 100, 200, 500] // allowed multiples
], [
    'second',
    [1, 2, 5, 10, 15, 30]
], [
    'minute',
    [1, 2, 5, 10, 15, 30]
], [
    'hour',
    [1, 2, 3, 4, 6, 8, 12]
], [
    'day',
    [1]
], [
    'week',
    [1]
], [
    'month',
    [1, 3, 6]
], [
    'year',
    null
]]
然后出现“默认为
未定义的
”行。第一行是正确的

Highcharts会自动从
单位
数组中找到最佳分组单位。因此,换句话说:
单位
指定如果Highcharts决定应用数据分组是个好主意,可以应用哪些分组

启用
dataGrouping.forced
并在
units
数组中仅使用一个键值对,以确保无论发生什么情况都将使用此分组,例如:

units: [[
    'hour',
    [3]
] // Data will always be grouped into 3 hours periods

这些只是一般规则-它们应该足以成功使用数据分组。

我添加了一个图像,其中注释了datagrouping强制选项(
datagrouping:{#强制:true,#近似值:“sum”,#单位:单位}
),但highstock看起来不像grouping为什么要注释掉数据分组。强制的?它应该设置为true,而不是注释掉。即使强制选项设置为true,并且我添加了默认单位数组,它看起来也不像是在单位数组中使用适当的分组分组
数据分组:{强制:真,近似值:“和”,单位:[‘毫秒’,[1,2,5,10,20,25,50,100,200,500],[‘秒’,[1,2,5,10,15,30],[‘分钟’,[1,2,5,10,15,30],[‘小时’,[1,2,3,4,6,8,12],[‘天’,[1],[1],[1],[1],[1,3,6],[1],[1],[1,3,6],[1],[1],[1],零],[/code>请提供现场演示(理想情况下为jsfiddle)重新创建问题。
units: [[
    'millisecond', // unit name
    [1, 2, 5, 10, 20, 25, 50, 100, 200, 500] // allowed multiples
], [
    'second',
    [1, 2, 5, 10, 15, 30]
], [
    'minute',
    [1, 2, 5, 10, 15, 30]
], [
    'hour',
    [1, 2, 3, 4, 6, 8, 12]
], [
    'day',
    [1]
], [
    'week',
    [1]
], [
    'month',
    [1, 3, 6]
], [
    'year',
    null
]]
units: [[
    'hour',
    [3]
] // Data will always be grouped into 3 hours periods