Ich konstruiere ein Liniendiagramm in PHP. Ich habe den Max-Wert des Liniendiagramms auf den Maximalwert meiner Sammlung von Elementen gesetzt, was jedoch dazu führte, dass der Graph weniger lesbar wurde. Sie können die höchste Zeile im Diagramm nicht sehen, wenn sie sich mit dem oberen Teil schneidet. Also, was ich brauche, ist im Grunde eine Formel, die eine Reihe von Zahlen zu nehmen und zu berechnen, was der logische max Wert im Liniendiagramm .. sein sollte, so einige BeispielePHP gegeben eine Reihe von beliebigen Zahlen, wie kann ich einen logischen maximalen Wert auf einem Liniendiagramm wählen?
3500
250
10049
45394
434
312
Max value on line graph should probably be 50000
493
412
194
783
457
344
max value on line graph would ideally be 1000
545
649
6854
5485
11545
In this case, 12000 makes sense as max value
so etwas so einfach wie Rundung nach oben zum nächsten Tausendstel könnte funktionieren, aber ich würde es brauchen, um es schrittweise zu erhöhen, wenn die Zahlen größer werden. (50000 statt 46.000 im ersten Beispiel) Das Maximum, das diese Zahlen jemals erreichen werden, ist ungefähr eine Million.
Alle Empfehlungen wäre sehr dankbar, danke.
Hier ist, was ich ließ sich auf, ich danke Ihnen allen für Ihre Kommentare:
private function FigureMaxValue($array)
{
$highestNumber = max($array);
if ($highestNumber == 0) return 0;
$highestNumber = $highestNumber * 1.1;
(float)$highestNumber = round((float)$highestNumber, 0);
$maxValue = ceil((integer)$highestNumber/100) * 100;
return $maxValue;
}
Was sollte der Maximalwert sein, wenn Sie im ersten Beispiel ein 50001 anstelle von 45 394 haben? – IVlad
Welche PHP-Version? – erisco
@IVlad: Ich würde 53,000ish sagen? (Hauptsache ist eine leicht teilbare ganze Zahl wie 53000 nicht 53500 oder 53585) @erisco: PHP 5 – stormist