我想要做的就是设置一个简单的全局选项,使用逗号为Y轴和工具提示格式化数字。我已经尝试了一百万个例子,我无法让它发挥作用。
版本:Chart.js / 2.2.2
我想使用简单的全局选项使用逗号为Y轴和工具提示值格式化所有数字。使用global更容易的原因是我生成并动态发送JSON数据并添加更多选项,这将是一个痛苦的动态,当所有数字需要表现相同时。
答案 0 :(得分:4)
与开发人员交谈后,我有一个非常好的全局方法来设置y轴和工具提示数字格式。我希望这也可以帮助其他人!
你绝对可以使用全局选项来控制它。
例如,以下是您将如何更新所有线性比例(默认Y轴)将使用美元符号和好数字格式化
Chart.scaleService.updateScaleDefaults('linear', {
ticks: {
callback: function(tick) {
return '$' + tick.toLocaleString();
}
}
});
以下是如何为工具提示做同样的事情
Chart.defaults.global.tooltips.callbacks.label = function(tooltipItem, data) {
var dataset = data.datasets[tooltipItem.datasetIndex];
var datasetLabel = dataset.label || '';
return datasetLabel + ": $" + dataset.data[tooltipItem.index].toLocaleString();
};
然后我询问在轴和数据集设置中包含用于格式化的简单标志:
我犹豫是否要将这些内容包括在内核中,因为有太多不同的选项,并试图支持每一个选项,这将大大增加已经很大的库的大小。鼓励某人创建一个格式化程序库可能是有意义的,这些格式化程序基本上可以自动创建这些函数以加速开发。
<强>参考文献:强>
https://github.com/chartjs/Chart.js/issues/3294#issuecomment-246532871 https://jsfiddle.net/ChrisGo/k4Lxncvm/