Kebsi Geschrieben 28. Dezember 2018 Geschrieben 28. Dezember 2018 (bearbeitet) Guten Tag, möchte gerne als kleine Nebenarbeit für meinen Vater ein Liniendiagramm aus Werten einer Datenbank erstellen. Mittels PHP haben ich bereits die Datenbank in meinem Skript eingebunden. Datenbank abfrage ist auch bereits gemacht und bekomm die Daten in ein Array zurück. datum = Datetime wert = Double Array ( [0] => 2018-12-27 08:00:00 [1] => 2018-12-27 08:05:00 [2] => 2018-12-27 08:10:00 [3] => 2018-12-27 08:15:00 ) Array ( [0] => 5 [1] => 6.2 [2] => 7.6 [3] => 8.5 ) Beim ausführen des Skriptes funktioniert alles. <?php // content="text/plain; charset=utf-8" require_once ('src/jpgraph.php'); require_once ('src/jpgraph_line.php'); require_once ('src/jpgraph_date.php'); //DB $db = mysqli_connect ( "localhost" , "root" , "", "test" ) or die("Keine Verbindung zur Datenbank!"); $sql = "SELECT * FROM temp"; $result = mysqli_query($db, $sql) OR die(mysql_error()); //Array $i=0; while ($array=mysqli_fetch_array($result)) { $datum[$i]= strtotime($array[0]); $betrag[$i]=$array[1]; $i++; //Graph erstellen $graph = new Graph(600,400); $graph->SetScale('datlin',5,20); $graph->xaxis->scale->SetDateFormat('d/m H:i'); $lineplot = new LinePlot($betrag, $datum); $lineplot->value-> Show(); $graph->xaxis->SetLabelAngle(90); $graph->SetMargin(40,40,30,130); $graph->legend->SetFrameWeight(1); $graph->Add($lineplot); // Graph ausgeben $graph->Stroke(); Doch wenn ich jetzt neue Daten hinzufüge, z.B. mit 1 Tag unterschied dann verzieht sich das Diagramm extrem Kann man das Diagramm auf einen Tag begrenzen? Oder dass es jeden Tag ein neues erstellt? Vielen Dank für eure Hilfe! Bearbeitet 28. Dezember 2018 von Kebsi Zitieren
JimTheLion Geschrieben 2. Januar 2019 Geschrieben 2. Januar 2019 Moin, Zitat Kann man das Diagramm auf einen Tag begrenzen? Dafür müsstest du sicher nur die SQL-Abfrage um die Where-Klausel ergänzen. Am 28.12.2018 um 16:21 schrieb Kebsi: Oder dass es jeden Tag ein neues erstellt? Meinst du "für jeden Tag ein neues.."? Geht auch, dann musst du deinen Code ein bisschen anders gestalten. Erst die Daten sammeln, für die einzelnen Tage die Diagramme erstellen und dann die Diagramme nacheinander ausgeben. Eine Mischung aus 5-Minuten und Tages-Intervallen sieht auf dem ersten Blick sicher etwas komisch aus, aber müsste es nicht wieder "normal" aussehen, sobald mehrere Tage drin sind? Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.