根据highcharts范围选择器的值,我想要更改数据分组。在我的柱形图中,如果选择一周,应该有7个条形,如果选择一天,应该有24个条形,如果选择一个月,该月的每一天都应该有一个条形。
似乎没有任何方法可以在highchart配置中提供一个函数来完成这一任务,但我可能遗漏了一些东西。
我目前的计划是处理范围选择器上的单击事件,以更新序列数据,使其包含正确的点数,但可能有更好的方法。
谢啦,谢啦
根据highcharts范围选择器的值,我想要更改数据分组。在我的柱形图中,如果选择一周,应该有7个条形,如果选择一天,应该有24个条形,如果选择一个月,该月的每一天都应该有一个条形。
似乎没有任何方法可以在highchart配置中提供一个函数来完成这一任务,但我可能遗漏了一些东西。
我目前的计划是处理范围选择器上的单击事件,以更新序列数据,使其包含正确的点数,但可能有更好的方法。
谢啦,谢啦
3条答案
按热度按时间4nkexdtk1#
当然,highstock中有很多数据分组选项。
您应该查看的主要组是
units
,在这里您可以指定允许的组类型。加上
groupPixelWidth
,你就得到了你需要的,这个宽度定义了你图表中的一个点可以有多小,如果图表上的点数增加,每个点的宽度会减少,一旦它低于这个阈值,highcharts会强制分组。保持这个足够大,以强制下一个级别的分组,假设你不想在屏幕上超过~30个点。@jsFiddle
yvgpqqbh2#
我们尝试了一个黑客围绕这一点,在那里我们使用Highstock的(Splinechart)范围选择器,事件和数据分组.点击每周范围选择器按钮,我们通过setExtremes捕捉此事件.后捕捉事件近似为“总和”.如果你使用两个系列比迭代对象.
@fiddle
eufgjt7s3#
您可以将范围选择器按钮与数据分组结合使用,而不使用事件。请参阅:API https://api.highcharts.com/highstock/rangeSelector.buttons中的“按按钮分组数据”
示例:https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/stock/rangeselector/datagrouping/