计算投票图表的百分比


Calculate percentage of poll chart

我有一个简单的民意调查,有多个答案。我在结果中使用答案的百分比作为图表的宽度。

例如:

  • 答案 1 20%
  • 答案 2 39%
  • 答案 3 5%
  • 答案 4 11%

等。。

(以上百分比是我的图表的宽度)

问题:

通过有很多答案,最高结果不会更多:15%。所以我的图表一点也不好看。

我的最高结果的图表必须是 100%,第二好的结果应该在总数上有一些相对的百分比。

有没有办法计算/解决这个问题?

对不起我的英语,希望你们理解。

我猜这更像是一个数学问题,而不是编码问题,但它就在这里。对于第一个(最高票数)条目,$percent将被100%;对于其他条目,它是:

$percent = $nr_votes * 100 / $first;

如果你的最高结果是 100%,而所有其他结果都是相对于它的,它不会让你的图表更宽。

我认为你可以这样做:

$answer1 = 20;
$answer2 = 39;
//etc... [probably an array]

$highestAnswer = 39; //You should have some code that generates this
$sizeMultiplier= 100 / $highestAnswer; //This will for example return ~2.5. Multiple all with 2.5 and the highest will be 100.
$answer1Width = $answer1 * $sizeMultiplier;
$answer2Width = $answer2 * $sizeMultiplier;
//etc... [probably an array]