Hallo an alle!
Ich suche jetzt seit mehreren Stunden warum mein jpgraph eine zu lange X-Achse hat. Die Beschreibung der Klassen aus der Dokumentation hat mir leider nicht weiter geholfen. Hat hier vielleicht jemand eine Idee?
Hier die Einzelheiten:
Ich habe eine MySQL-Datenbank, in der jede Minute eine Temperatur von einem Sensor und der UNIX Time-Stamp gespeichert wird. Aus dieser Datenbank lese ich die letzten 1440 Zeilen (entspricht 24 Stunden) in zwei Arrays aus . Eines beinhaltet die Temperatur und eines den UNIX Time-Stamp. Diese ordne ich dann der X- und Y-Achse zu, wobei die X-Achse der Zeit zugeordnet wird. In der erzeugten Grafik ist die X-Achse danach immer um eine Stunde zu lang. Warum ist die X-Achse länger als der Graph?
Hier der Code:
Hier noch mal zwei Bilder in denen ich das Problem mit einem weißen Kreuz markiert habe:
Ich suche jetzt seit mehreren Stunden warum mein jpgraph eine zu lange X-Achse hat. Die Beschreibung der Klassen aus der Dokumentation hat mir leider nicht weiter geholfen. Hat hier vielleicht jemand eine Idee?
Hier die Einzelheiten:
Ich habe eine MySQL-Datenbank, in der jede Minute eine Temperatur von einem Sensor und der UNIX Time-Stamp gespeichert wird. Aus dieser Datenbank lese ich die letzten 1440 Zeilen (entspricht 24 Stunden) in zwei Arrays aus . Eines beinhaltet die Temperatur und eines den UNIX Time-Stamp. Diese ordne ich dann der X- und Y-Achse zu, wobei die X-Achse der Zeit zugeordnet wird. In der erzeugten Grafik ist die X-Achse danach immer um eine Stunde zu lang. Warum ist die X-Achse länger als der Graph?
Hier der Code:
PHP-Code:
<?php
include ("/usr/share/jpgraph3/jpgraph.php");
include ("/usr/share/jpgraph3/jpgraph_line.php");
include ("/usr/share/jpgraph3/jpgraph_mgraph.php");
include ("/usr/share/jpgraph3/jpgraph_date.php");
$DatabaseHost = "localhost";
$DatabaseUser = "datenbankuser";
$DatabasePassword = "datenbankpasswort";
$Database = "datenbankname";
$Table = "tabellenname";
$fileName = "/var/www/grafiken/graph.png";
//Datenbankanbindung
//******************
$DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword) or die ("Keine Verbindung moeglich");
mysql_select_db($Database, $DatabasePointer) or die ("Die Datenbank existiert nicht");
//Auslesen der letzten 1440 Zeilen (= Tag) aus der Datenbank
//**********************************************************
$ResultPointer = mysql_query("SELECT * FROM $Table ORDER BY UnixTimeStamp DESC LIMIT 1440");
for($i = 0, $Export = ""; $i < mysql_num_rows($ResultPointer); $i++)
{
$Daten = mysql_fetch_object($ResultPointer);
$temp[] = $Daten->temp_clara;
$xdata[] = $Daten->UnixTimeStamp;
}
//Erzeugung eines Graphen
//******************************************
$graph = new Graph(700,200,"auto");
$graph->SetScale('datint',"auto","auto","auto","auto");
$lineplot_temp=new LinePlot($temp, $xdata);
// Grafik Formatieren
$graph->img->SetMargin(50,50,20,60);
$graph->SetColor("#000000");
$graph->SetMarginColor("#333333");
$graph->SetShadow();
//Linie 1
$lineplot_temp->SetColor("#FF8888");
$lineplot_temp->SetFillColor("#EE0000@0.6");
$lineplot_temp->SetWeight(1);
// Die Linien zu der Grafik hinzufügen
$graph->Add($lineplot_temp);
$graph->Stroke($fileName);
?>
Kommentar