Highcharts - Highstock:带滚动条的固定宽度间隔

时间:2017-12-09 08:09:43

标签: highcharts highstock

我需要我的图表中的点具有固定宽度(例如,每个100px)。如果所需空间超出图表的宽度,我只希望能够水平滚动(scrollbar.enabled参数设置为true)。

这是基本设置,不设置点宽:

http://jsfiddle.net/wxxdne19/

如果我像这样设置列宽:

http://jsfiddle.net/wxxdne19/1/

tickPixelInterval参数被忽略(当然是documentation says)。

我尝试了很多其他的东西,但是没有一个能够奏效,而且我的想法也用完了。我怎么能做我需要的呢?

更新

为了澄清我需要的东西,把它想象成我有一个柱形图,我需要强制所有列都有一个固定的宽度。像这样:

http://jsfiddle.net/4rx4snjh/

但是,而不是相互重叠的列,我希望滚动条能够完成它的工作:-)此外,我需要它可以处理任何类型的系列(行,区域......),而不仅仅是列

1 个答案:

答案 0 :(得分:1)

这里的解决方案似乎是手动计算极值并在load事件中设置它们:

  load: function() {

    var chart = this,
      xAxis = this.xAxis[0],
      visibleColumns = (xAxis.width - pointWidth) / pointWidth;

    xAxis.setExtremes(pointStart, pointStart + pointInterval * visibleColumns);

  }

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

出于某种原因(可能是错误){容器宽度为小值时必须初始化xAxis.min值(在我的示例中,它小于400 px左右)。

API参考: https://api.highcharts.com/class-reference/Highcharts.Axis#setExtremes