我的Chart.js图表的Y轴上的标签应该在前面有一个美元符号,因为它们是货币价值。
此代码在文档中,但对我不起作用。
var chart = new Chart(ctx, {
type: 'line',
data: data,
options: {
scales: {
yAxes: [{
ticks: {
// Include a dollar sign in the ticks
callback: function(value, index, values) {
return '$' + value;
}
}
}]
}
}
});
这是我的结果。 '之前'没有这个代码,'之后'是。 显然,它不仅仅是在价值之前添加一个
$
,而且还会发生其他事情。
知道如何解决这个问题吗?
这里的问题是chart.js不会对字符串进行舍入,因为它不应该为你做。
当您将字符串附加到数字时,JavaScript将为您转换它,您无法控制精度。
您可以使用toFixed来解决您的问题:
// Define wherever decimals:
const decimals = 3;
// ...
var chart = new Chart(ctx, {
type: 'line',
data: data,
options: {
scales: {
yAxes: [{
ticks: {
// Include a dollar sign in the ticks
callback: function(value, index, values) {
return '$' + value.toFixed(decimals);
}
}
}]
}
}
});