我有x轴的最小值和最大值。如果我的minvalue=0maxvalue=23我希望我的x轴刻度范围为0-23,但由于自动刻度间隔调整(例如2),我的x轴刻度范围为0-24。我如何将其限制为23个?

最佳答案

您可以使用tickPositionstickPositioner选项,例如:

const breaks = 10;
const dataMin = 0;
const dataMax = 23;
const step = Math.round((dataMax - dataMin) / breaks * 100) / 100;

Highcharts.chart('container', {
  ...,
  xAxis: {
    tickPositioner: function() {
      const positions = [];

      for (var i = dataMin; i < (dataMax - step / 2); i += step) {
        positions.push(Math.round(i * 100) / 100);
      }

      positions.push(dataMax);

      return positions;
    }
  }
});




现场演示:http://jsfiddle.net/BlackLabel/6m4e8x0y/4927/

API参考:

https://api.highcharts.com/highcharts/xAxis.tickPositions

https://api.highcharts.com/highcharts/xAxis.tickPositioner

关于javascript - 有什么办法可以在x轴上强制附加上一个值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60753245/

10-09 03:17