Plots erzeugen: Unterschied zwischen den Versionen
Jaydee (Diskussion | Beiträge) K (nicht mehr gültigen Link durch neuen ersetzt) |
KKeine Bearbeitungszusammenfassung |
||
Zeile 7: | Zeile 7: | ||
Alles weitere kann im [http://forum.fhem.de/index.php/topic,11275.msg75594.html#msg75594 Fhem-Forum] nachgelesen werden. | Alles weitere kann im [http://forum.fhem.de/index.php/topic,11275.msg75594.html#msg75594 Fhem-Forum] nachgelesen werden. | ||
'''Achtung''': Verwenden Sie diesen Editor nicht, wenn das Fhem-Device bereits angelegt ist und Sie für dieses Device ein bestehendes, allgemeines gplot-File verwenden, | '''Achtung''': Verwenden Sie diesen Editor nicht, wenn das Fhem-Device bereits angelegt ist und Sie für dieses Device ein bestehendes, allgemeines gplot-File verwenden, das auch für andere Devices benutzt wird. Beim Abspeichern wird ein Filter im gplot-File gesetzt, das das gplot-File nur für genau dieses Device verwendbar macht. | ||
Beispiel: | Beispiel: | ||
Zeile 25: | Zeile 25: | ||
set weblink_irgendwas copyGplotFile | set weblink_irgendwas copyGplotFile | ||
ein Duplikat angelegt werden, | ein Duplikat angelegt werden, das ausschließlich für diesen Plot verwendet wird. Der Befehl kann unterhalb des ersten Kasten per Dropdown ausgewählt werden. | ||
== Individuell / Manuell == | == Individuell / Manuell == | ||
Zeile 68: | Zeile 68: | ||
using 1:4 axes x1y1 title 'Humidity (%)' with lines\ | using 1:4 axes x1y1 title 'Humidity (%)' with lines\ | ||
Die Zeilen, die mit ''set'' beginnen, beeinflussen wesentlich das Erscheinungsbild und Aussehen Ihrer Plots (Achsenbeschriftungen, Skalen usw.). Dabei sollten Sie die Zeilen, | Die Zeilen, die mit ''set'' beginnen, beeinflussen wesentlich das Erscheinungsbild und Aussehen Ihrer Plots (Achsenbeschriftungen, Skalen usw.). Dabei sollten Sie die Zeilen, die eine Angabe zwischen "<" und ">" enthalten, zunächst unverändert lassen. Weitere (ausführliche) Hinweise (zu Gnuplot!) finden Sie in einer [http://www.home.uni-osnabrueck.de/elsner/Skripte/gnuplot.pdf PDF-Datei]. Eingeschränktere, aber für die meisten Belange von Fhem ausreichende Infos finden Sie auf [http://www.aurbacher.net/gnuplot/gnuplot.html dieser Web-Seite]. | ||
=== Benutzung der Variablen === | === Benutzung der Variablen === |
Version vom 12. August 2014, 20:34 Uhr
Plots erzeugen
Mit dem "gplot-Editor
Seit dem 29.04.2013 verfügt Fhem auch über einen "gplot-Editor".
Alles weitere kann im Fhem-Forum nachgelesen werden.
Achtung: Verwenden Sie diesen Editor nicht, wenn das Fhem-Device bereits angelegt ist und Sie für dieses Device ein bestehendes, allgemeines gplot-File verwenden, das auch für andere Devices benutzt wird. Beim Abspeichern wird ein Filter im gplot-File gesetzt, das das gplot-File nur für genau dieses Device verwendbar macht.
Beispiel:
aus
#FileLog 4:::
wird
#FileLog 4:DS2423.energy_a\x3a::
in dem entsprechenden gplot-File.
Die anderen Devices, die evtl. dieses gplot-File verwenden, haben danach keine funktionierende Plot-Anzeige mehr. Bevor also etwas geändert wird, sollte mit
set weblink_irgendwas copyGplotFile
ein Duplikat angelegt werden, das ausschließlich für diesen Plot verwendet wird. Der Befehl kann unterhalb des ersten Kasten per Dropdown ausgewählt werden.
Individuell / Manuell
Vorbemerkungen:
- Fhem bedient sich für die Erstellung der Plots des Programms Gnuplot [1]. Hierbei reichen die "einfacheren" Funktionalitäten dieses Programms aus (Gnuplot kann noch viel mehr).
- die Beispieldateien für die in Fhem integrierten Plots finden Sie in Ihrem Fhem-Programmordner unter www/gplot.
- Angaben wie <SIZE>, <OUT>, <L1>, <IN> usw. im Plot-File sind Platzhalter bzw. Feldbezeichner für Fhem. Diese sind case-sensitive (Groß-/Kleinschreibung beachten).
Ein Beispiel (temp4hum4.gplot) aus diesem Verzeichnis:
# Attribute 'small' is useful for gnuplot/-scroll only, # if plotsize is less than 800,400 #set terminal png transparent small size <SIZE> crop set terminal png transparent size <SIZE> crop set output '<OUT>.png' set xdata time set timefmt "%Y-%m-%d_%H:%M:%S" set xlabel " " set ytics nomirror set y2tics #set ytics set title '<L1>' set grid xtics y2tics set y2label "Temperature in C" set ylabel "Humidity (%)" #FileLog 4:temperature:10: #FileLog 4:humidity:50: plot \ "< egrep 'temperature' <IN>"\ using 1:4 axes x1y2 title 'Measured temperature' with lines,\ "< egrep 'humidity' <IN>"\ using 1:4 axes x1y1 title 'Humidity (%)' with lines\
Die Zeilen, die mit set beginnen, beeinflussen wesentlich das Erscheinungsbild und Aussehen Ihrer Plots (Achsenbeschriftungen, Skalen usw.). Dabei sollten Sie die Zeilen, die eine Angabe zwischen "<" und ">" enthalten, zunächst unverändert lassen. Weitere (ausführliche) Hinweise (zu Gnuplot!) finden Sie in einer PDF-Datei. Eingeschränktere, aber für die meisten Belange von Fhem ausreichende Infos finden Sie auf dieser Web-Seite.
Benutzung der Variablen
Variable | Nutzung in gplot-File | Füllung mit inhalt in fhem.cfg |
---|---|---|
<TL> | set title '<TL>' | attr weblink title "Dies füllt den Platzhalter <TL>" |
<L1> | set xlabel '<L1>' | attr weblink label "Dies füllt das Label <L1>" |
<L2> | set title '<L2>' | attr weblink label "Dies füllt das Label <L1>"::"Dies füllt das Label <L2>" |
Welche Daten werden dargestellt
Die Zeilen
#FileLog 5::0: #FileLog 14::0:
in einer gplot-Datei tragen zwar zu Beginn das Kommentarzeichen "#", jedoch handelt es sich durchaus nicht um solche. Vielmehr trifft man mit den Werten hinter FileLog Vorgaben, welche Werte wie von Fhem an gnuplot zwecks grafischer Darstellung übergeben werden
Im o.a. Beispiel werden das 5. und das 14. Wertfeld (voneinander getrennt durch ein Leerzeichen (Blank)) an gnuplot weiter gegeben.
Eine dazu passende Log-Dateizeile könnte beispielsweise so aussehen
2013-11-14_17:32:00 2013-Nov-14 17:32:00 17.9 5.8 4.9 58 94 0.0 0.0 N 5.8 572.91 1015.200 ----1. Feld-------- --2. Feld-- --3.---- -4.- -5. -6. 7. 8. -9. 10. 11 12 --13.- --14.--- ^ ^ werden ausgewertet --| --|
Diese Parameter können auch als attribut übergeben werden:
attr weblink plotfunction "FileLog 5::0:"
Anhand der Anmerkungen wird hoffentlich die Wirkweise deutlich. Zu den restlichen - optionalen - Parametern hinter FileLog wird zunächst auf die commanref verwiesen.
Datum und Zeit
Anmerkungen / Hinweise:
Fhem erwartet das Datum und die Uhrzeit der Log-Dateieinträge zwingend an erster Stelle der Datenzeile und zwar im Format
JJJJ-MM-TT_SS:mm:ss
wobei
- JJJJ die 4-stellige Jahreszahl
- MM der 2-stellige Monat (ggfls. mit Vornull)
- TT der 2-stellige Tag (ggfls. mit Vornull)
- SS die 2-stellige Stunde (ggfls. mit Vornull)
- mm die 2-stellige Minute (ggfls. mit Vornull)
- ss die 2-stellige Sekunde (ggfls. mit Vornull)
bedeutet. Bitte beachten Sie auch die Stelle der Zeichen "-", "_" und ":". Stehen diese nicht an den angegebenen Stellen, wird die entsprechende Zeile beim Erzeugen des Plots nicht beachtet. Ggfls. wird gar kein Plot angezeigt.
Eine Änderung/Anpassung der *.gplot-Datei in der Zeile
set timefmt "..."
hat auf dieses Verhalten von Fhem keine Auswirkungen, sondern nur auf die Darstellung von Datum und Zeit durch Gnuplot .
Dazu ein Beispiel:
Mit
2013-11-14_17:32:00 2013-Nov-14 17:32:00 17.9 5.8 4.9 58 94 0.0 0.0 N 5.8 572.91 1015.200
kann Fhem etwas anfangen. Mit
20131114173200 2013-Nov-14 17:32:00 17.9 5.8 4.9 58 94 0.0 0.0 N 5.8 572.91 1015.200
oder
14.11.2013 17:32 2013-Nov-14 17:32:00 17.9 5.8 4.9 58 94 0.0 0.0 N 5.8 572.91 1015.200
dagegen nicht.
Im ersten Fehler-Beispiel fehlen die notwendigen Trennzeichen, im zweiten Fehler-Beispiel ist die Reihenfolge im Datum verkehrt, außerdem werden die falschen Trenner verwendet. Zudem fehlen die Sekunden.