我创建具有3段圆环图:百分比不增加高达100%
当用户将鼠标悬停在颜色区域的每一个它显示的比例为100%。目前每个部分如下;绿色是78%,黄色是13%,红色是8%。如果将所有这些加在一起并不等于100%,则等于99%
每个部分的值都是来自终点的整数,我试图将所有数据转换为百分比。
对于这个图表I有三个值:
var values = [1397, 234, 149];
添加时这些值需要等于100%:
var sum = values.reduce((a, b) => a + b, 0); // this works great
为了确定每个部分我使用的百分比:
var value = 0;
values.forEach(function(number) {
console.log(number + ' = ' + (number/sum) * 100);
result += (number/sum) * 100;
});
哪个产生以下几点:
1397 = 78.48314606741573
234 = 13.146067415730336
149 = 8.370786516853933
result = 100
现在,这是我认为问题所在。我无法显示浮点值,因为它不是百分比值。我决定用Math.round()
来创建我认为不合适的整数。
如何将每个浮动值转换为等于100%的百分比?是否有替代Math.round()
?
那么你会如何用铅笔和纸做? – Pointy
铅笔和纸张?真?只是为了澄清,我来这里之前尝试了相当长的一段时间。不需要毫无意义的评论。 – Mike
为什么这被标记为精确重复?请提供一个确切的问题的链接,我会很高兴遵循它。 – Mike