Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 计算投票图表的百分比_Php_Percentage - Fatal编程技术网

Php 计算投票图表的百分比

Php 计算投票图表的百分比,php,percentage,Php,Percentage,我有一个简单的民意测验,有多个答案。我在结果中使用答案的百分比作为图表的宽度 例如: 回答1 20% 回答2 39% 回答3.5% 回答4.11% 等等 (上面的百分比是我的图表宽度) 问题是: 通过有很多答案,最高的结果不会有更多,比如:15%。所以我的图表一点也不好 我的最高成绩表必须是100%,第二好成绩应该占总成绩的百分比 有没有办法计算/解决这个问题 对不起,我的英语不好,希望你们能理解。如果你的最高成绩是100%,而其他所有成绩都是相对的,那么这不会让你的图表更宽。我想你可以这样

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

例如:

  • 回答1 20%
  • 回答2 39%
  • 回答3.5%
  • 回答4.11%
等等

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

问题是:

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

我的最高成绩表必须是100%,第二好成绩应该占总成绩的百分比

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


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

如果你的最高成绩是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]

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

$percent = $nr_votes * 100 / $first;

对不起,我不知道你的意思。你能给我们举个例子吗?你能把同样的代码贴出来吗?