In den folgenden Beiträgen wird dieser Code benutzt:
Codeart: PHP
Vorraussetzung (z.B. Librarys usw.):
Erklärung: Graf Temperatur/Luftfeuchtigkeit
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
<?php require 'phplot.php'; $plot = new PHPlot(1300, 300); // Werte eingrenzen $datum_min = date('d.m.Y'); $datum_max = date('d.m.Y'); $temperatur_tmp = "0"; $data = array( ); // Werte auslesen und bescheiden $datei = fopen ("../werte.txt", "r"); $i=0; while (!feof($datei)) { $zeile = fgets($datei); #print $zeile; // Datum des Werts $datum_wert = new DateTime(substr($zeile, 0, 10)); $zeit_wert = (substr($zeile, 13, 8)); // Fragen ob das Datum im richtigen Bereich liegt if(($datum_wert->format('d.m.Y') >= $datum_min) AND ($datum_wert->format('d.m.Y') <= $datum_max)) { $vergleich = strpos(substr($zeile, 23), "None"); if($vergleich === 0) { ${'wert_'.$datum_wert->format('d-m-Y').'_'.$zeit_wert} = $temperatur_tmp; } else { ${'wert_'.$datum_wert->format('d-m-Y').'_'.$zeit_wert} = substr($zeile, 24, 4); } } $temperatur_tmp = ${'wert_'.$datum_wert->format('d-m-Y').'_'.$zeit_wert}; $stunden = (int)substr($zeit_wert, 0, 2); $minuten = (int)substr($zeit_wert, 3, 2); $zeit_in_sek = (($stunden*60)+$minuten)*60; $data[$i] = array('', $zeit_in_sek/3600, '', ${'wert_'.$datum_wert->format('d-m-Y').'_'.$zeit_wert}); $i++; } fclose ($datei); $plot->SetDataValues($data); $plot->SetDataType('data-data'); $plot->SetPlotType('lines'); $plot->SetPlotAreaWorld(Null, 0, 24, 50); $plot->DrawGraph(); ?> |