Hauptmenü

Wie Plots erstellen

Begonnen von Michi240281, 31 Januar 2014, 22:48:00

Vorheriges Thema - Nächstes Thema

Michi240281

Hallo allerseits,

habe bei dem Thema Plots irgendwie ein Brett vor dem Kopf. Habe vor ein paar Wochen mal irgendwo ne Anleitung online gesehen, die ich leider nicht gespeichert habe, wo es um das Erstellen von Plots geht. Jetzt finde ich diese Anleitung einfach nicht mehr wieder, hab schon paar Stunden danach gegooglet.

Meine Fragen wären nun:

- Was brauche ich als Input für Plots? Die greifen doch auf die Logfiles zu, richtig? Was muss man da beachten?
- Wie erstellt man den Plot schließlich? Meine bei dem Logfile was von "Create plot" gesehen zu haben....
- Und wie konfiguriert man den Plot schließlich? Titel und Achsenbeschriftung ist klar, aber was definiert man mit den restlichen Einstellungen?

Wäre auch prima, falls jmd eine Anleitung hat oder genau diese Anleitung, die ich mal gesehen hatte kennt oder hat, er diese hier posten könnte!

Besten Dank im vorraus!
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

betateilchen

Zitat von: Michi240281 am 31 Januar 2014, 22:48:00
Was brauche ich als Input für Plots?

Die Beschreibung zu SVG in der commandref als Grundlage ist schon ein hervorragender Input.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Michi240281

Zitat von: betateilchen am 31 Januar 2014, 22:51:27
Die Beschreibung zu SVG in der commandref als Grundlage ist schon ein hervorragender Input.

Leider nicht so wirklich, sonst hätte ich keinen thread erstellt!  ;) :'(

Ums mal konkreter zu machen, dann versteh ichs auch besser: Habe einen Türkontakt am Garagentor. Filelog wurde per autocreate angelegt! Mehr hab ich nicht getan! Nun habe ich ein "Filelog_Garagentor". Da klicke ich drauf und dann auf "Create SVG plot". (An der Stelle die Anmerkung, dass hier schon eine Abweichung zur command ref ist (da steht nämlich Create INSTANCE"). Aber egal! Nun öffnet sich eine Konfigurationsansicht, in der man u.a. auch Titel etc. eingeben kann. Da komme ich nicht weiter. Titel ist klar. Bei y-Axis gehts schon los:

[min:max]: Wie trägt man das ein? Habe [0:1] und [open:closed] probiert, nen Graphen sieht man jedoch nicht.
Tics as: Was trägt man hier denn ein?
Im nächsten Bereich blick ich dann garnix mehr. Jede Menge leere Felder und keine Beschreibung, wozu die sind und was man eintragen muss!

Also möge mich bitte jmd aufschlauen!!!!!!!!
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

betateilchen

schau doch mal in das Verzeichnis fhem/www/gplot da findest Du jede Menge vorgefertigte Definitionsdateien für fast alles was man in fhem plotten kann. Da gibt es auch eine Vorlage für den von Dir genannten Einsatzzweck, z.B. die fs20.gplot. Eine solche Datei kannst Du einfach in Deinem FileLog als "attr logtype" zusätzlich zu "text" mit angeben.

Den Titel änderst Du übrigens nicht in der Editorseite des Plots, sondern als Attribut der Plotdefinition ;)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Michi240281

Zitat von: betateilchen am 31 Januar 2014, 23:28:41
schau doch mal in das Verzeichnis fhem/www/gplot da findest Du jede Menge vorgefertigte Definitionsdateien für fast alles was man in fhem plotten kann. Da gibt es auch eine Vorlage für den von Dir genannten Einsatzzweck, z.B. die fs20.gplot. Eine solche Datei kannst Du einfach in Deinem FileLog als "attr logtype" zusätzlich zu "text" mit angeben.

Ok, dann schau ich da mal! Vielen Dank!!!! Sind das dann Vorlagen im Sinne von Einträgen in die fhem.cfg?

Zitat von: betateilchen am 31 Januar 2014, 23:28:41
Den Titel änderst Du übrigens nicht in der Editorseite des Plots, sondern als Attribut der Plotdefinition ;)

Warum gibts dann dieses Fenster, wenn man da eigentlich garnichts konfigurieren soll/kann? Also am besten nur über Creat plot den Plot erstellen und speichern und dann die Attribute aus den Vorlagen ziehen und dann zuordnen? Bin mir da gerade nicht sicher, aber ich glaube obwohl ich einen Plot erstellt habe (er ist jedoch einfach leer), habe ich kein "define" oder sonstiges in der fhem.cfg stehen! Wie soll ich da dann Attribute zuordnen?
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

betateilchen

Zitat von: Michi240281 am 31 Januar 2014, 23:41:48Sind das dann Vorlagen im Sinne von Einträgen in die fhem.cfg?

Als Anfänger sollte man nicht in der fhem.cfg rumfummeln, sondern das fhem weitgehend über die Weboberfläche konfigurieren. Und die gplot-Dateien kannst Du in beiden Fällen verwenden.

Zitat von: Michi240281 am 31 Januar 2014, 23:41:48Warum gibts dann dieses Fenster, wenn man da eigentlich garnichts konfigurieren soll/kann?

Dass Du da nichts konfigurieren sollst oder kannst, habe ich gar nicht geschrieben. Ich habe nur gesagt, dass der Titel (im Sinne von Überschrift) des Plots da NICHT eingetragen wird. Was da im Standard zwischen spitzen Klammen steht, z.B. <L1> sind Platzhalter für die Werte, die Du in den Attributen des plots einträgst.

Und selbstverständlich hast Du ein define für einen Plot. Das verhält sich exakt wie jede andere Definition in fhem auch.


define wz_Heizkurve SVG fhemDbLog:SVG_wohnzimmer:HISTORY
attr wz_Heizkurve label "Wohnzimmer: min:$data{min1}°C max:$data{max1}°C Ist:$data{currval1}°C Soll:$data{currval2}°C"


Damit wird ein Plot namens "wz_Heizkurve" angelegt. Diese benutzt das gplot-File "SVG_wohnzimmer.gplot" und nimmt die Daten aus dem Log-Device "fhemDbLog"


Internals:
   DEF        fhemDbLog:SVG_wohnzimmer:HISTORY
   GPLOTFILE  SVG_wohnzimmer
   LOGDEVICE  fhemDbLog
   LOGFILE    HISTORY
   NAME       wz_Heizkurve
   NR         260
   STATE      initialized
   TYPE       SVG
Attributes:
   label      "Wohnzimmer: min:$data{min1}°C max:$data{max1}°C Ist:$data{currval1}°C Soll:$data{currval2}°C"


und im gplot-File steht


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 title '<L1>'
set ytics
set y2tics
set grid y2tics
set ylabel "Temperaturen °C"
set y2label "Ventil %"
set y2range [0:100]

#DbLog wz_Sensor:temperature::
#DbLog wz_FHT_Clima:desired-temp::
#DbLog wz_FHT_Clima:ValvePosition::
#DbLog wz_Sensor:humidity::

plot "<IN>" using 1:2 axes x1y1 title 'I' ls l1 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'S' ls l0 lw 1 with steps,\
     "<IN>" using 1:2 axes x1y2 title 'V' ls l3fill lw 1 with steps,\
     "<IN>" using 1:2 axes x1y2 title 'H' ls l2 lw 1 with lines


Das Beispiel arbeite jetzt zwar mit DbLog, aber es ist für FileLog grundsätzlich das gleiche Prinzip.

Und das "set title <L1>" in diesem Beispiel bedeutet, dass das Attribut "label" als Überschrift verwendet wird.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Michi240281

Vielen Dank für deine Ausführungen. Leider verstehe ich teilweise nur Bahnhof! :'(

Könntest du vllt so nett sein, und mir kurz eine Schritt-für-Schritt Anleitung schreiben, wie nun die Vorgehensweise zur Erstellung eines Logs ist?

Ich verstehe es so (bitte korrigieren):

1. Sicherstellen, dass man ein Logfile hat
2. Über "Create SVG Plot" Plot erstellen (definieren)
3. In die Vorlagen im von dir angegebenen Pfad schauen
4.?

Wie gehts denn dann weiter? In der fhem.cfg soll ich ja am besten garnichts eintragen, also muss ich ja doch über das "Konfigurationstool" gehen, das sich nach "Create SVG Plot" öffnet, oder?  Also was muss man denn dann da eintragen?

Das mit dem Titel verstehe ich auch nicht, denn wenn ich da einen Titel eintrage erscheint er doch auch oben?!?!?

Leider wie du siehst, noch viele Fragen! :(
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Michi240281

#7
So,

habe mich nochmal etwas mit den Plot beschäftigt und jetzt glaube ich das Grundprinzip verstanden zu haben! :)

Im Anhang mal der erste Versuch; und gleich noch ein paar Fragen:

1. Ich habe über das Attribut "fixedrange" einfach mal den X-Achsen-Bereich vom 01.01. bis 01.02. definiert. Sind deswegen die Scroll- und Zoomicons oben links nicht mehr zu sehn?
2. Wie kann man denn die "Zoomstufe" einstellen?
3. Ist es möglich, die X-Achsen-Skalierung zu ändern? Wie man sieht habe ich hier ein Delta von 7 Tage....das würde ich gerne verringern.
4. Die y-Achsenbeschriftung passt, wie man sieht nicht ganz drauf ("Geschlossen" ist abgeschnitten). Wie behebt man das?
5. Im 3. Bild hat sich die Hintergrundfarbe geändert und der Plot hat einen Rahmen bekommen. Ist das durch das Attribut "group" gekommen?

Ich habe bzgl. aller Fragen selbst natürlich schon einiges probiert, bekomme es aber nicht hin und bitte daher um kurze Hilfe!!

Besten Dank im vorraus!
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Johannes

Evtl. eine Option, um Charts selbsterklärend und mit mehr Funktionen zu abuen:

http://forum.fhem.de/index.php/topic,10439.0.html

Michi240281

Ich habe jetzt im Log seltsame Einträge, die ich nicht verstehe!

Offenbar greift da irgendwas auf irgendwas bzgl. der rechten X-Achse zu, aber die habe ich ja garnicht definiert! Kann jmd helfen?
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Michi240281

Zitat von: Johannes am 02 Februar 2014, 13:13:17
Evtl. eine Option, um Charts selbsterklärend und mit mehr Funktionen zu abuen:

http://forum.fhem.de/index.php/topic,10439.0.html

Hallo Johannes,

danke für den Tipp!
In dem Frontend sind aber auch alle anderen Sachen drin, also alle Geräte etc.? Ist im Grunde ein anderes GUI, jedoch mit allen bekannten Funktionen und weiteren von dir entwickelten? Hab ich dann da auch das Dashboard?
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Johannes

Hallo,

Der Fokus liegt auf den Charts. Du kannst aber FHEM innerhalb meines Frontends ganz normal benutzen, es gibt einen Reiter in dem die FHEM Oberfläche angezeigt werden kann, inkl Dashboard etc.

Michi240281

Zitat von: Michi240281 am 02 Februar 2014, 12:27:18
So,

habe mich nochmal etwas mit den Plot beschäftigt und jetzt glaube ich das Grundprinzip verstanden zu haben! :)

Im Anhang mal der erste Versuch; und gleich noch ein paar Fragen:

1. Ich habe über das Attribut "fixedrange" einfach mal den X-Achsen-Bereich vom 01.01. bis 01.02. definiert. Sind deswegen die Scroll- und Zoomicons oben links nicht mehr zu sehn?
2. Wie kann man denn die "Zoomstufe" einstellen?
3. Ist es möglich, die X-Achsen-Skalierung zu ändern? Wie man sieht habe ich hier ein Delta von 7 Tage....das würde ich gerne verringern.
4. Die y-Achsenbeschriftung passt, wie man sieht nicht ganz drauf ("Geschlossen" ist abgeschnitten). Wie behebt man das?
5. Im 3. Bild hat sich die Hintergrundfarbe geändert und der Plot hat einen Rahmen bekommen. Ist das durch das Attribut "group" gekommen?

Ich habe bzgl. aller Fragen selbst natürlich schon einiges probiert, bekomme es aber nicht hin und bitte daher um kurze Hilfe!!

Besten Dank im vorraus!

Kann mir da keiner weiterhelfen?

Hätte noch eine Frage: Wie kann man die Icons fürs Zoomen und scrollen oben links in der Plotansicht ändern?

Besten Dank schonmal!!
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Michi240281

Also mit dem Plot erstellen steh ich nach wie vor auf Kriegsfuß!

Da man ja am besten nicht direkt in der fhem.cfg "rumfuchtelt", wähle ich den folgenden Weg:

1. Filelog suchen, für das ein Plot erstellt werden soll
2. In diesem dann auf "Create SVG plot" klicken.

Nun verließen sie ihn, da ich eine eigene gplot Datei haben möchte. Was ist also in den Feldern einzutragen? Verstehe nicht, dass es so eine schöne GUI gibt und dann gibts nirgends Erklärungen, wie die Felder zu befüllen sind.

Kann hier bitte jmd weiterhelfen?
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

Spezialtrick

Ich habe praktisch genau das Gleiche für meine Fenster realisiert. Im Prinzip war das ziemlich simple.

Der Max Fensterkontakt wurde von Autocreate automatisch mit passendem Logfile angelegt. Dieses habe ich gesucht und dazu mit "Create SVG Plot" den Graphen erstellt. Dann kommst du in die SVG Konfigurationsübersicht, in der Du entsprechende Daten angeben musst. Anbei habe ich dir meine SVG Konfigurationsübersicht angehangen, an der du dich orientieren kannst. Hilft dir das weiter?



FHEM - Debmatic - Zigbee2MQTT - Homekit