3

我的图表的 xAxis 用天数 (xAxisType=dateTime) 表示。

我修改选择事件(缩放)并取决于在选择中选择的天数,重新计算图表数据并将 xAxis 更改为小时(而不是天)。如果我们在新图表中进行另一个选择(数据重新计算和 xAxis 更改为十分钟,而不是小时),也会发生相同的过程。

假设我们在图表中有从 2 月 1 日到 2 月 25 日的日期。如果我们选择 2 月 2 日和 3 日,则重新计算的新数据在 xAxis 中显示为小时(现在我们在 xAxis 中显示了从 2 月 2 日 00:00 到 2 月 3 日 23:00,48 个刻度)。如果我们再次选择一个新时间段(例如从 2 月 2 日 07:00 到 2 月 2 日 10:00),则会显示重新计算的新数据,但在 xAxis 中出现十分钟刻度。最后一点很重要,不仅显示选定的时间段,还显示全天(24 小时以 10 分钟为单位)。

问题是,在最后一次选择之后(以编程方式),是否有任何方式在选定的时间段(从 2 月 2 日 07:00 到 2 月 2 日 10:00)启动常规 Highcharts 缩放?

有了这个,直接显示选定的时间段而不是一整天,我有机会按下“重置缩放”按钮并获得一整天(我现在拥有的)。

我在 Dojo 中使用 Highcharts。

4

3 回答 3

18

要设置极端值,请使用:

this.xAxis[0].setExtremes(min,max);
this.showResetZoom();
于 2013-09-26T14:23:14.680 回答
2

我猜你需要以编程方式重置缩放。这比启用默认的 highcharts 缩放重置标签更好。因为这需要额外的冗余步骤。

this.zoom()

谢谢。

于 2015-03-13T07:33:58.973 回答
0

看起来this.zoom()不会触发chart.events.selection事件。

如果您需要重置缩放并沿途触发所有事件,请以编程方式单击“重置按钮”

$('.highcharts-button').click();
于 2015-07-09T22:13:51.593 回答