Witam, tworzę histogram w PHP i mam problem z podzieleniem tablicy na podprzedziały o jednakowej długości h. Poniżej kod który udało mi się stworzyć o ile przedziały pokazuje poprawnie to ilość elementów w danym przedziale pokazuje większą niż zawartą w tabeli. W jaki sposób można poprawić ten kod aby pokazywał poprawną ilość elementów oraz zliczał ilość elementów w poszczególnym przedziale ?
$tab=array(2000,2010,2015,2020,2060,2250,2300,2340,2450,2500,2500,2550,2600,2700,2840,2900,2990,3000,3000,3000);
$k=round(sqrt(count($tab)));
$delta=(max($tab)-min($tab))/$k;
for ($j=0; $j<$k; $j++) {
$loBin = min($tab) + $j * $delta;
$hiBin = $loBin + $delta;
$od[$j] = $loBin;
$do[$j] = $hiBin;
echo $od[$j].' - '.$do[$j].'<br />';
}
foreach($tab as $key) {
for($s=1; $s<=$k; $s++) {
if($key>=$od[$s] and $key<=$do[$s]) {
echo $key.' nalezy do przedzialu '.$od[$s].' do '.$do[$s].' <br />';
}
}
}