Linear Cartesian Axis

The linear scale is use to chart numerical data. It can be placed on either the x or y axis. The scatter chart type automatically configures a line chart to use one of these scales for the x axis. As the name suggests, linear interpolation is used to determine where a value lies on the axis.

Tick Configuration Options

The following options are provided by the linear scale. They are all located in the ticks sub options. These options extend the common tick configuration.

NameTypeDefaultDescription
beginAtZerobooleanif true, scale will include 0 if it is not already included.
maxTicksLimitnumber11Maximum number of ticks and gridlines to show.
precisionnumberif defined and stepSize is not specified, the step size will be rounded to this many decimal places.
stepSizenumberUser defined fixed step size for the scale. more…
suggestedMaxnumberAdjustment used when calculating the maximum data value. more…
suggestedMinnumberAdjustment used when calculating the minimum data value. more…

Axis Range Settings

Given the number of axis range settings, it is important to understand how they all interact with each other.

The suggestedMax and suggestedMin settings only change the data values that are used to scale the axis. These are useful for extending the range of the axis while maintaining the auto fit behaviour.

  1. let minDataValue = Math.min(mostNegativeValue, options.ticks.suggestedMin);
  2. let maxDataValue = Math.max(mostPositiveValue, options.ticks.suggestedMax);

In this example, the largest positive value is 50, but the data maximum is expanded out to 100. However, because the lowest data value is below the suggestedMin setting, it is ignored.

  1. let chart = new Chart(ctx, {
  2. type: 'line',
  3. data: {
  4. datasets: [{
  5. label: 'First dataset',
  6. data: [0, 20, 40, 50]
  7. }],
  8. labels: ['January', 'February', 'March', 'April']
  9. },
  10. options: {
  11. scales: {
  12. yAxes: [{
  13. ticks: {
  14. suggestedMin: 50,
  15. suggestedMax: 100
  16. }
  17. }]
  18. }
  19. }
  20. });

In contrast to the suggested* settings, the min and max settings set explicit ends to the axes. When these are set, some data points may not be visible.

Step Size

If set, the scale ticks will be enumerated by multiple of stepSize, having one tick per increment. If not set, the ticks are labeled automatically using the nice numbers algorithm.

This example sets up a chart with a y axis that creates ticks at 0, 0.5, 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5.

  1. let options = {
  2. scales: {
  3. yAxes: [{
  4. ticks: {
  5. max: 5,
  6. min: 0,
  7. stepSize: 0.5
  8. }
  9. }]
  10. }
  11. };