Jump to content

JPGraph & PHP - Werte aus Datenbank

Empfohlene Beiträge

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 von Kebsi

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

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?

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2018 SE Internet Services

fidelogo_small.png

if_icon-6-mail-envelope-closed_314900.pnSchicken Sie uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App


Get it on Google Play

Kontakt

Hier werben?
Oder senden Sie eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×

Wichtige Information

Fachinformatiker.de verwendet Cookies. Mehr dazu in unserer Datenschutzerklärung