Highcharts甜甜圈图表百分比增加100.1%

时间:2014-03-19 13:45:28

标签: javascript math highcharts

我使用High Charts创建了一个圆环图,如下所示。我的问题是子集总计为100.1%。我不是rounding,我的数字都是double类型。有没有人知道我的数学可能出错的地方才能得到这个如此轻微的问题?

7.7 + 7.0 + 15.3 + 70.1 = 100.1

图表

enter image description here

2 个答案:

答案 0 :(得分:4)

这只是由格式化程序完成舍入引起的。我们来看一下这个例子:http://jsfiddle.net/MkuMS/

总和是:74.5+14.1+10.3+1.2 = 100.1

现在,让我们从dataLabels.formathttp://jsfiddle.net/MkuMS/1/

中删除舍入

总和是:74.50331125827813+14.072847682119205+10.264900662251655+1.1589403973509933 = 100

现在,这取决于您,或者您将显示舍入错误或标签中的完整信息(看起来很糟糕)或创建您自己的dataLabels.formatter

但您仍会遇到非舍入值的问题:http://jsfiddle.net/MkuMS/3/

总和是:33.3+33.3+33.3 = 99.9

答案 1 :(得分:0)

可能是因为double类型。在某些情况下,它不够精确。请尝试使用BigDecimal

更多信息:Double vs. BigDecimal?