如何在 Chart.js 中用负值隐藏 Yaxis 上的 0 值
how to hide 0 value on Yaxis in Chart.js with negative values
我使用 chart.js 创建了一个带负值的条形图。现在我不想在 Y 轴上显示 0(零)值。
我google很多东西,但我没有运气。
我也尝试了以下属性。
ticks: {
beginAtZero: false
}
scaleStartValue: -20, scaleStepWidth: 20, scaleSteps: 3, scaleBeginAtZero: false,
但是我没有成功。
查看下图,我已经提到了我的预期结果。
这可以使用以下 y 轴刻度回调函数来实现:
callback: function(value, index) {
if (value !== 0) return value + '%';
}
或 - “将 0 值更改为 100%”:
callback: function(value, index) {
if (value === 0) return 100 + '%';
else return value + '%';
}
演示
var chart = new Chart(ctx, {
type: 'bar',
data: {
labels: ['Jan', 'Feb', 'Mar', 'Apr', 'May'],
datasets: [{
label: 'BAR',
data: [50, 20, -60, 55, -35],
backgroundColor: 'rgba(0, 119, 290, 0.2)',
borderColor: 'rgba(0, 119, 290, 0.6)',
borderWidth: 2
}]
},
options: {
scales: {
yAxes: [{
ticks: {
stepSize: 50,
callback: function(value, index) {
if (value !== 0) return value + '%';
/* OR *
if (value === 0) return 100 + '%';
else return value + '%'; */
}
}
}]
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.min.js"></script>
<canvas id="ctx"></canvas>
我使用 chart.js 创建了一个带负值的条形图。现在我不想在 Y 轴上显示 0(零)值。
我google很多东西,但我没有运气。
我也尝试了以下属性。
ticks: {
beginAtZero: false
}
scaleStartValue: -20, scaleStepWidth: 20, scaleSteps: 3, scaleBeginAtZero: false,
但是我没有成功。
查看下图,我已经提到了我的预期结果。
这可以使用以下 y 轴刻度回调函数来实现:
callback: function(value, index) {
if (value !== 0) return value + '%';
}
或 - “将 0 值更改为 100%”:
callback: function(value, index) {
if (value === 0) return 100 + '%';
else return value + '%';
}
演示
var chart = new Chart(ctx, {
type: 'bar',
data: {
labels: ['Jan', 'Feb', 'Mar', 'Apr', 'May'],
datasets: [{
label: 'BAR',
data: [50, 20, -60, 55, -35],
backgroundColor: 'rgba(0, 119, 290, 0.2)',
borderColor: 'rgba(0, 119, 290, 0.6)',
borderWidth: 2
}]
},
options: {
scales: {
yAxes: [{
ticks: {
stepSize: 50,
callback: function(value, index) {
if (value !== 0) return value + '%';
/* OR *
if (value === 0) return 100 + '%';
else return value + '%'; */
}
}
}]
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.min.js"></script>
<canvas id="ctx"></canvas>