Chart.js を使用して、Webサイトに含めたいチャートがあります。 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;}}
}
}]
}
}
});
新しいChart.jsのバージョン2を使用すると、既存の回答を得ることができなかったため、V2でこの問題を解決することがわかりました。
new Chart(ctx, {type: 'bar', data: barChartData,
options:{
scales: {
yAxes: [{
ticks: {
stepSize: 1
}
}]
}
}
});
グローバル設定セクションの Chart.js ドキュメントを確認します。
//ブール-描画スペースが存在する場合でも、スケールが浮動小数点数ではなく整数に固定されるかどうか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
});