как изменить значения оси Y от действительных чисел до целого числа в chartjs?

У меня есть диаграмма, которую я хочу включить в свой сайт с помощью Chart.js . На оси Y он дает мне реальные числа вместо целых чисел, и это то, что я хочу, вот картина того, что у меня есть сейчас:

введите описание изображения здесь

И это код:

var lineChartData = { labels : ["2013/04/01","2013/03/31", "2013/03/30", "2013/03/29", "2013/03/28","2013/03/27", "2013/03/26"], datasets : [ { fillColor : "rgba(151,187,205,0.5)", strokeColor : "rgba(151,187,205,1)", pointColor : "rgba(151,187,205,1)", pointStrokeColor : "#fff", data : ["0", "2","1", "0", "1","0","1"] } ] } var myLine = new Chart(document.getElementById("canvas").getContext("2d")).Bar(lineChartData); 

Попробуйте это, где max – это самое высокое значение ваших данных.

 var steps = 3; new Chart(ctx).Bar(plotData, { scaleOverride: true, scaleSteps: steps, scaleStepWidth: Math.ceil(max / steps), scaleStartValue: 0 }); 

Я обработал его таким образом в новой версии:

 new Chart(ctx, { type: 'bar', data: chartData, options: { scales: { yAxes: [{ ticks: { beginAtZero: true, callback: function(value) {if (value % 1 === 0) {return value;}} } }] } } }); 

Мне не удалось заставить существующие ответы работать для меня при использовании новой версии 2 Chart.js , поэтому вот что я нашел для решения этой проблемы в V2:

 new Chart(ctx, {type: 'bar', data: barChartData, options:{ scales: { yAxes: [{ ticks: { stepSize: 1 } }] } } }); 

Проверьте документацию Chart.js в разделе «Глобальная конфигурация»:

// Boolean – должен ли масштаб придерживаться целых чисел, а не плавать, даже если пространство рисования есть scaleIntegersOnly: true,

Надеюсь, поможет.

Если вы хотите начать с другого числа, отличного от нуля, вы должны учитывать это:

 var step = 5; var max = 90 var start = 40; new Chart(income).Bar(barData, { scaleOverride: true, scaleSteps: Math.ceil((max-start)/step), scaleStepWidth: step, scaleStartValue: start });