我正在使用Highcharts并注意到,当图表的值非常接近零时,它会将y轴标签或工具提示值格式化为“-0.00”。
我试过这段代码:
Highcharts.numberFormat(-0.00002,2)
并返回“-0.00”。它应该是“0.00”。
我尝试用numberFormat
封装Highcharts.wrap
函数来捕获这个案例但是没有成功,我的包装器没有被执行。这是我的代码:
$(document).ready(function () {
(function (H) {
H.wrap(H, 'numberFormat', function (proceed, number, decimals, decPoint, thousandsSep) {
var originalResult = proceed.call(number, decimals, decPoint, thousandsSep);
var result = originalResult.isMinusZero() ? originalResult.cutMinusSign() : originalResult;
return result;
});
}(Highcharts));
});
任何人都可以找到我的错误或提供其他解决方案吗?
答案 0 :(得分:2)
wrap
使用原型中的方法正常工作,尝试以这种方式覆盖numberFormat:
(function (H) {
var proceed = H.numberFormat;
H.numberFormat = function (number, decimals, decPoint, thousandsSep) {
var originalResult = proceed(number, decimals, decPoint, thousandsSep);
var result = originalResult.isMinusZero() ? originalResult.cutMinusSign() : originalResult;
return result;
};
}(Highcharts));
Highcharts.numberFormat(-0.002, 4);