如果y值很大,例如:5000000,则值显示超出范围,因此我将其格式化为数百万,如5M。但是,highcharts值不接受字符串值。
var num = 5000000;
function nFormatter(num) {
if (num >= 1000000000) {
return (num / 1000000000).toFixed(1).replace(/\.0$/, '') + 'G';
}
if (num >= 1000000) {
return (num / 1000000).toFixed(1).replace(/\.0$/, '') + 'M';
}
if (num >= 1000) {
return (num / 1000).toFixed(1).replace(/\.0$/, '') + 'K';
}
return num;
}
num = nFormatter(num);
..
..
..
..//highcharts
series: [{
name: 'Move',
data: [{
color: Highcharts.getOptions().colors[0],
radius: '112%',
innerRadius: '88%',
y: num //num value is 5M
}]
},
..
..
答案 0 :(得分:0)
将值传递给tooltip格式化程序函数将解决此问题。
..
..
tooltip: {
formatter: function() {
return num;
},
..
..
series: [{
name: 'Move',
data: [{
color: Highcharts.getOptions().colors[0],
radius: '112%',
innerRadius: '88%',
y: parseInt(num)
}]
},
..
..