javascript 如何在 Chart.js 2 中设置轴的步长?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/47334236/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-29 07:18:34  来源:igfitidea点击:

How to set axes' step size in Chart.js 2?

javascriptchart.jschartjs-2.6.0

提问by Damien Monni

I created a simple line chart using chart.js with 3 Y axes: https://codepen.io/anon/pen/dZVgKw

我使用带有 3 个 Y 轴的 chart.js 创建了一个简单的折线图:https://codepen.io/anon/pen/dZVgKw

As you can see, the last one is going from 10 to 20 without any number between. How can I set step size here?

如您所见,最后一个是从 10 到 20,中间没有任何数字。我如何在这里设置步长?

This is how I add an axe:

这是我添加斧头的方式:

{
  id: 'C',
  type: 'linear',
  position: 'left',
  ticks: {
    max: 10,
    min: 20,
  },
}

Thanks.

谢谢。

回答by nicholaswmin

How can I set step size here?

我如何在这里设置步长?

Straight from the samples (Linear Scale, step size):

直接来自样本(线性比例,步长)

By setting a stepSizevalue.

通过设置一个stepSize值。

scales: {
  xAxes: [{
    display: true,
    scaleLabel: {
      display: true,
      labelString: 'Month'
    }
  }],
  yAxes: [{
    display: true,
    scaleLabel: {
      display: true,
      labelString: 'Value'
    },
    ticks: {
      min: 0,
      max: 100,

      // forces step size to be 5 units
      stepSize: 5 // <----- This prop sets the stepSize
    }
  }]
}

Here's a live example:

这是一个活生生的例子:

var ctx = document.getElementById('chartJSContainer').getContext('2d')

new Chart(ctx, {
  type: 'line',
  data: {
    labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'],
    datasets: [
      {
        label: '# of Votes',
        data: [12, 19, 3, 5, 2, 3],
        borderWidth: 1
      },  
      {
        label: '# of Points',
        data: [7, 11, 5, 8, 3, 7],
        borderWidth: 1
      }
    ]
  },
  options: {
    scales: {
      yAxes: [{
        ticks: {
          reverse: false,
          stepSize: 3
        },
      }]
    }
  }
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.3.0/Chart.js"></script>
<body>
    <canvas id="chartJSContainer" width="600" height="400"></canvas>
</body>