2017-02-09 20 views
13

Я использую Chart.js 2,0 версии для рисования графиков, я хочу, чтобы определить минимальный размер шага в гистограммеУстановить минимальный размер шага в диаграмме JS

var myNewChart = new Chart(grapharea, { 
       type: 'bar', 
       data: barData, 
       options: { 
        responsive: true,       
        scales: { 
         yAxes: [ 
          { 
           ticks: { 
            min: 0, // it is for ignoring negative step. 
            beginAtZero: true, 
            stepSize: 1 // if i use this it always set it '1', which look very awkward if it have high value e.g. '100'. 
           } 
          } 
         ] 
        } 
       } 
      }); 

на этот раз я использую

stepSize: 1

Я использую этот размер шага до игнорировать значение точки, например '0,5', это показывает, когда максимальные значения графа id меньше, например, '2'.
Если я использую это, он всегда устанавливает шаг «1», который выглядит очень неудобно, если он имеет высокое значение, например. '100'.

Ищу такую ​​вещь: suggestedMin = 1

Есть ли вещь, чтобы определить Thie минимального размера шага, который не должен быть закреплен в высших случаях значения.

ответ

21

Если вы не хотите показывать метки точек (например, 0,5), вы можете написать функцию обратного вызова для фильтрации меток значений точек вместо использования stepSize.

Как это:

ticks: { 
    min: 0, // it is for ignoring negative step. 
    beginAtZero: true, 
    callback: function(value, index, values) { 
     if (Math.floor(value) === value) { 
      return value; 
     } 
    } 
} 

Работа скрипку здесь: https://jsfiddle.net/ma7h611L/

+0

Только что попробовал это на моем графике. Это работает как шарм, спасибо! –