我正在使用自动缩放起始值。它将自动生成并选择y轴中的最小和最大数字。现在我面临着问题,比例从最小数字开始,将完全从最大数字开始。我可以将比例设置为在最小数字之前开始,如值的2%吗?这是我的图表:
我只是想注意我有随机值,所以我无法调整比例来开始和结束某些值! 感谢
答案 0 :(得分:3)
您可以使用y轴刻度的 min
和 max
属性设置最小值(开始)和最大(结束)比例值。
scales: {
yAxes: [{
ticks: {
min: Math.min.apply(this, data_array) - 5,
max: Math.max.apply(this, data_array) + 5
}
}]
}
<强>ᴅᴇᴍᴏ强>
var data_array = [20, 22, 24, 28, 30];
var chart = new Chart(ctx, {
type: 'bar',
data: {
labels: ['Jan', 'Feb', 'Mar', 'Apr', 'May'],
datasets: [{
label: 'BAR',
data: data_array,
backgroundColor: 'rgba(0, 119, 290, 0.5)',
borderColor: 'rgba(0, 119, 290, 0.6)'
}]
},
options: {
scales: {
yAxes: [{
ticks: {
min: Math.min.apply(this, data_array) - 5,
max: Math.max.apply(this, data_array) + 5,
stepSize: 5
}
}]
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.min.js"></script>
<canvas id="ctx"></canvas>
答案 1 :(得分:0)
添加到 GRUNT 答案中。
function round(x) {
return Math.ceil(x / 5) * 5;
}
min: round(Math.min.apply(this, data_array) - 5),
max: round(Math.max.apply(this, data_array) + 5),
如果您的 stepSize 为 5,这将使图表更漂亮。