Highstock 图表 - 在 rangeSelector 中选择“1 个月”按钮不更改所选按钮样式

Highstock chart - selecting '1 month' button in rangeSelector not changing button style as selected

我使用的是 Highstock 图表,x 轴为日期值,y 轴为对应的数字。 rangeSelector 按钮是 1 周、1 个月、3 个月、全部。

问题是 - 当我选择 1 周、3 个月和全部时,它改变了所选按钮的样式,但是当我单击 1 个月时,它的样式没有改变,给人的印象是没有按钮被选中。虽然它在图表中发生了变化并且只显示了 1 个月的数据。

我的用例与这个 Highstock 演示页面相同。在这里,我在图表中单击 1m 时也看到了同样的问题 - https://www.highcharts.com/stock/demo/basic-line

这似乎是一个错误。我在这里报告:https://github.com/highcharts/highcharts/issues/7458

作为解决方法,您可以更改第一个按钮的定义:

  {
    type: 'month',
    count: 1,
    text: '1m'
  }

至:

  {
    type: 'day',
    count: 30,
    text: '1m'
  }

现场演示: http://jsfiddle.net/kkulig/tqhsy2oa/

另一种方法是使用按钮的 click 事件手动将 highcharts-button-pressed class 分配给 SVG 元素。


API参考:https://api.highcharts.com/highstock/rangeSelector.buttons