<分区>
我有 3 个数字 113、6、1
这些数字中的每一个都代表一个数据。所以我需要以图形方式显示数据。因此,113 将具有最大数据,然后 6 将小于该数据,1 将是最少的。
是这样的。因此,如果我使用百分比方法,它会给我最后一个最小数字的数据 0%,因此我无法在图像中显示它。
我怎样才能做到这一点?
<分区>
我有 3 个数字 113、6、1
这些数字中的每一个都代表一个数据。所以我需要以图形方式显示数据。因此,113 将具有最大数据,然后 6 将小于该数据,1 将是最少的。
是这样的。因此,如果我使用百分比方法,它会给我最后一个最小数字的数据 0%,因此我无法在图像中显示它。
我怎样才能做到这一点?
最佳答案
要么你增加气球的数量,使其等于你的数字除以最少的数字之和(在这种情况下,最少的是 1,所以你需要 113+6+1 = 120 个气球),或者你“调整"无论如何,您得到的最小气球数为 1 的百分比。
在这种情况下,c = 1 表示百分比为 1/120,您需要的气球少于一个。所以你从你的33个气球中取出1个分配给1。那么6+113要分32个气球,6得到32*6/(6+113) = 1.6个气球。您可以为它分配 2 个气球,这样 30 个气球的值就为 113。
绘制的百分比将是 1/33、2/33 和 30/33,即大约 3%、6% 和 90%,而不是您无法表示的“真实”值 0.83%、5% 和 94.16% .够近了吗?你必须做出判断。
另一种可能性是研究如何生成“混合颜色”气球,如果可能的话。
关于javascript - 3个不同范围的数字的百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13148162/