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!
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.
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!!!!!!!!
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 ;)
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?
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.
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! :(
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!
Evtl. eine Option, um Charts selbsterklärend und mit mehr Funktionen zu abuen:
http://forum.fhem.de/index.php/topic,10439.0.html
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?
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?
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.
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!!
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?
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?
Hi,
hier mal ein Abschnitt aus meiner fhem.cfg wo ich einen Plot für meinen Solarkollektor implementiert habe.
Zitatdefine SolarKollektor GPIO4 28-00000544fbad
attr SolarKollektor model DS18B20
attr SolarKollektor pollingInterval 300
attr SolarKollektor room Solar,Favourites
define logSolarKollektor FileLog ./log/SolarKollektor-%Y-%m.log SolarKollektor:.*|SolarKollektor:temperature:.*
attr logSolarKollektor logtype temp4
define WL_SolarKollektor SVG logSolarKollektor:WL_SolarKollektor:CURRENT
attr WL_SolarKollektor label "Temperatur des SolarKollektors"
attr WL_SolarKollektor plotsize 760,160
attr WL_SolarKollektor room Solar
Zitat von: Spezialtrick am 12 Februar 2014, 11:35:00
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?
Vielen Dank! Generell hilft das sehr, leider tut sich bei mir nix! Jmd ne Idee warum?
Poste mal bitte ein Teils des entsprechenden Logs.
2014-02-10_19:43:54 Garagentor offen
2014-02-10_19:43:54 Garagentor contact: offen (to HMLAN1)
2014-02-10_19:45:23 Garagentor geschlossen
2014-02-10_19:45:23 Garagentor contact: geschlossen (to HMLAN1)
2014-02-10_19:59:14 Garagentor Activity: alive
2014-02-10_19:59:22 Garagentor offen
2014-02-10_19:59:22 Garagentor contact: offen (to HMLAN1)
2014-02-10_20:01:07 Garagentor geschlossen
2014-02-10_20:01:07 Garagentor contact: geschlossen (to HMLAN1)
2014-02-10_20:01:59 Garagentor Activity: alive
2014-02-10_20:05:13 Garagentor Activity: alive
2014-02-10_20:05:49 Garagentor offen
2014-02-10_20:05:49 Garagentor contact: offen (to HMLAN1)
2014-02-10_20:08:30 Garagentor geschlossen
2014-02-10_20:08:30 Garagentor contact: geschlossen (to HMLAN1)
2014-02-10_20:13:13 Garagentor Activity: unknown
2014-02-10_20:13:36 Garagentor set_reset
2014-02-10_20:17:59 Garagentor offen
2014-02-10_20:17:59 Garagentor contact: offen (to HMLAN1)
2014-02-10_20:18:13 Garagentor Activity: alive
2014-02-10_20:18:55 Garagentor offen
2014-02-10_20:18:55 Garagentor contact: offen (to HMLAN1)
2014-02-10_20:18:55 Garagentor alive: yes
2014-02-10_20:18:55 Garagentor battery: ok
2014-02-10_20:18:55 Garagentor cover: geschlossen
2014-02-10_20:18:55 Garagentor offen
2014-02-10_20:18:55 Garagentor contact: offen (to HMLAN1)
2014-02-10_20:19:33 Garagentor geschlossen
2014-02-10_20:19:33 Garagentor contact: geschlossen (to HMLAN1)
2014-02-10_20:19:39 Garagentor offen
2014-02-10_20:19:39 Garagentor contact: offen (to HMLAN1)
2014-02-10_20:20:05 Garagentor geschlossen
2014-02-10_20:20:05 Garagentor contact: geschlossen (to HMLAN1)
2014-02-10_20:25:58 Garagentor Activity: alive
2014-02-10_20:26:34 Garagentor Activity: alive
2014-02-10_20:34:06 Garagentor Activity: alive
2014-02-10_20:41:20 Garagentor Activity: alive
2014-02-10_20:43:40 Garagentor Activity: alive
2014-02-10_20:48:44 Garagentor Activity: alive
2014-02-10_20:49:07 Garagentor Activity: alive
2014-02-10_20:51:18 Garagentor Activity: alive
2014-02-10_20:54:54 Garagentor Activity: alive
2014-02-10_21:29:49 Garagentor offen
2014-02-10_21:29:49 Garagentor contact: offen (to HMLAN1)
2014-02-10_21:32:19 Garagentor geschlossen
2014-02-10_21:32:19 Garagentor contact: geschlossen (to HMLAN1)
2014-02-10_22:55:04 Garagentor Activity: alive
2014-02-10_22:59:39 Garagentor Activity: alive
2014-02-11_07:30:44 Garagentor offen
2014-02-11_07:30:44 Garagentor contact: offen (to HMLAN1)
2014-02-11_07:32:23 Garagentor geschlossen
2014-02-11_07:32:23 Garagentor contact: geschlossen (to HMLAN1)
2014-02-11_08:36:52 Garagentor offen
2014-02-11_08:36:52 Garagentor contact: offen (to HMLAN1)
2014-02-11_08:38:38 Garagentor geschlossen
2014-02-11_08:38:38 Garagentor contact: geschlossen (to HMLAN1)
2014-02-11_16:28:41 Garagentor offen
2014-02-11_16:28:41 Garagentor contact: offen (to HMLAN1)
2014-02-11_16:31:31 Garagentor geschlossen
2014-02-11_16:31:31 Garagentor contact: geschlossen (to HMLAN1)
2014-02-11_17:22:42 Garagentor Activity: alive
2014-02-11_17:47:28 Garagentor Activity: alive
2014-02-11_17:51:29 Garagentor Activity: alive
2014-02-11_17:55:31 Garagentor Activity: alive
2014-02-11_18:24:15 Garagentor offen
2014-02-11_18:24:15 Garagentor contact: offen (to HMLAN1)
2014-02-11_18:25:55 Garagentor geschlossen
2014-02-11_18:25:55 Garagentor contact: geschlossen (to HMLAN1)
2014-02-11_20:15:32 Garagentor Activity: alive
2014-02-11_21:00:19 Garagentor Activity: alive
2014-02-11_21:05:00 Garagentor Activity: alive
2014-02-12_07:08:37 Garagentor offen
2014-02-12_07:08:37 Garagentor contact: offen (to HMLAN1)
2014-02-12_07:09:35 Garagentor geschlossen
2014-02-12_07:09:35 Garagentor contact: geschlossen (to HMLAN1)
2014-02-12_07:31:01 Garagentor offen
2014-02-12_07:31:01 Garagentor contact: offen (to HMLAN1)
2014-02-12_07:32:44 Garagentor geschlossen
2014-02-12_07:32:44 Garagentor contact: geschlossen (to HMLAN1)
2014-02-12_17:23:39 Garagentor offen
2014-02-12_17:23:39 Garagentor contact: offen (to HMLAN1)
2014-02-12_17:24:55 Garagentor geschlossen
2014-02-12_17:24:55 Garagentor contact: geschlossen (to HMLAN1)
2014-02-12_22:05:35 Garagentor offen
2014-02-12_22:05:35 Garagentor contact: offen (to HMLAN1)
2014-02-12_22:06:39 Garagentor geschlossen
2014-02-12_22:06:39 Garagentor contact: geschlossen (to HMLAN1)
Ich hab keine AHnung, warum es nicht geht!!!!!!!!! :(
Welchen Eintrag willst Du plotten, bisher trifft Deine Definition auf alles:
Garagentor.*
Außerdem erwartet SVG einen Zahlenwert.
Gruß Joachim
Zitat von: Joachim am 13 Februar 2014, 09:43:23
Welchen Eintrag willst Du plotten, bisher trifft Deine Definition auf alles:
Garagentor.*
Außerdem erwartet SVG einen Zahlenwert.
Gruß Joachim
Ich möchte gerne "open/closed" bzw. "offen"/"geschlossen" plotten.
Ich habe es auch mit den anderen Definitionen probiert, z.B. "Garagentor.contact".
Meinst du, der Eintrag bei "TIC as" ist falsch?
Da tut sich einfach nix!! Kann doch nicht wahr sein!!!!!!!! :'( :'( :'(
Nochmal:
Außerdem erwartet SVG einen Zahlenwert.
Du musst beim Loggen aus open / closed die Ziffern 0 / 1 machen!
Ich checks nicht!!
Bei einem FileLog eines Aktors bekomme ich was hin! Was ist denn da los? Ist das Logfile buggy?
Zitat von: Joachim am 13 Februar 2014, 19:33:53
Nochmal:
Außerdem erwartet SVG einen Zahlenwert.
Du musst beim Loggen aus open / closed die Ziffern 0 / 1 machen!
Ok!!!
Wie geht das?
http://forum.fhem.de/index.php/topic,19559.msg131874.html#msg131874
Zitat von: Joachim am 13 Februar 2014, 20:00:05
http://forum.fhem.de/index.php/topic,19559.msg131874.html#msg131874
Sehr hilfreich! :'(
Scheinbar ist die Plotfunktion nicht sehr weit verbreitet, wenn hier niemand in der Lage ist, einam konstruktiv zu helfen!
Hab vllt ne Idee!!!
Kann mir mal bitte jmd die fs20.gplot Datei posten? DANKE!
Moin,
habs jetzt hinbekommen, indem ich die fs20.gplot Datei verwendet habe.
Dass man in der gplot Datei die Umsetzung mit den Zahlenwerten vornehmen muss, hätte man mir auch mal sagen können. Wäre arg nett, wenn mir mal jmd im Detail den folgenden Code aus der fs20.gplot erklären könnte, dann kann ich das verstehen und für die Zukunft anwenden.
#FileLog 3::0:$fld[2]=~"on"?1:0
plot "< awk '{print $1, $3~/on/? 1 : 0; }' <IN>"\
using 1:2 notitle with steps
Besten Dank schonmal!!
PS: Im übrigen finde ich es seltsam, dass es jetzt damit funktioniert, denn ich denke mal, dass hier auf "On" geprüft wird, der SC sendet aber nur open/closed. Dennoch funktioniert es! Ich habe das "on" auch mal gegen "closed" ersetzt, Ergebnis ist jedoch dasselbe! Bitte um Aufklärung!
Ich würde gerne, wenn erlaubt, noch 4 Fragen loswerden!
1. Wieso wird zwischen 0 und 8 Uhr nix angezeigt? Da war das Tor ja zu!
2. Wie kann man einen x-Achsenbereich definieren? Ich möchte gerne immer die letzten x Tage sehen vom aktuellen Zeitpunkt.
3. Wie kann man oben die Icons der Symbole (Zoom und Scrollen) ändern? Ich möchte nicht auf SVG Icons umsteigen, nur diese Icons hätte ich schon gerne die SVG Icons.
4. Wie kann man die x-Achse beschriften und skalieren?
Besten Dank im vorraus!
Hallo,
Zitatwenn erlaubt,
Nein ist nicht erlaubt aber du stellst die Fragen ja dennoch ;D
Was heisst hier
wenn erlaubt?
Jeder kann alle Fragen stellen - muss aber dann nur mit den Antworten leben können ;)
Zu 1)
Weil sich zwischen 00:00:00 und kurz vor 8 Uhr der Status nicht geändert hat.
Das gefällt dir nicht?
Dann schau mal addLog an ;)
Zu 2)
fixedrange wäre dann dein Freund.
Zu 3 und 4 kann ich dir nichts sagen - sorry.
Grüße
Wollte einfach mal fragen, da ich auf meine letzten Posts auch keine Antworten mehr bekommen habe!
Ich kann mit jeder Antwort leben, wenn ich denn eine bekomme! ;)
Ich weiß, dass wir Anfänger sehr nervig sein können, aber ich denke es ist auch im Sinne des Forums, wenn man ausschließlich konstruktive Hinweise gibt, denn so entwickeln auch Anfänger sich irgendwann zu Profis, die dann wiederum Anfängern helfen und so wächst die gesamte Community und alle haben was davon! Vllt ist ja der Anfänger von heute morgen derjenige, der ein noch nie dagewesenes Modul entwickelt.
In dem Sinne vielen Dank! :)
Habe mir fixedrange angesehen und habe jetzt die letzten 2 Tage, prima! :) Blöd ist dabei nur, dass jetzt die x-Achse sehr grob skaliert ist. Sind zwar 8 Teilstriche, aber nur 1 Beschriftung (s. Anhang).
addLog werde ich mir dann auch mal ansehen, ich nehme an, ich finde es in der ref!
EDIT: addLog ist nirgends zu finden. Was ist das?
Zitat von: Puschel74 am 14 Februar 2014, 19:47:32
Zu 2)
fixedrange wäre dann dein Freund.
Leider habe ich damit nun auch nicht den gewünschten Effekt erreicht. :(
Vllt kann ja nochmal jmd helfen:
Ich möchte, dass der Plot automatisch immer die letzten x Tage anzeigt. Mit fixedrange kann ich zwar den Anfangstag festsetzen, jedoch ist der dann immer gleich - logischerweise.
Also wie stellt man den x-Achsenbereich auf den Bereich "letzte x Tage bis jetzt" ein?
Hallo,
ZitatLeider habe ich damit nun auch nicht den gewünschten Effekt erreicht.
ZitatAlso wie stellt man den x-Achsenbereich auf den Bereich "letzte x Tage bis jetzt" ein?
Ich verlink dir mal die commandref zu "SVG"
http://fhem.de/commandref.html#SVG (http://fhem.de/commandref.html#SVG)
Hier mal bitte unter attributes - fixedrange schauen.
ZitatIf the value is one of hour, day, <N>days, week, month, year than set the zoom level for this SVG independently of the user specified zoom-level.
Was meinst du was
<N>days heisst?
Grüße
Zitat von: Puschel74 am 17 Februar 2014, 18:31:46
Hallo,
Ich verlink dir mal die commandref zu "SVG"
http://fhem.de/commandref.html#SVG (http://fhem.de/commandref.html#SVG)
Hier mal bitte unter attributes - fixedrange schauen.
Was meinst du was <N>days heisst?
Grüße
Das habe ich alles gesehen und durch, leider tut es das nicht!
Beispiel:
Ohne jegliches Attribut wird die x-Achse von heute morgen 0 Uhr bis heute Abend 0 Uhr skaliert.
Trage ich nun über das Attribut "fixedrange" -1 day ein, wird genau die gestrigen 24h angezeigt. Bei -2 die 24h von vorgestern.
Trage ich dort ein: 2014-02-15 2014-02-17
werden die letzten 2 Tage angezeigt, so wie ich es haben möchte, allerdings ist das dann tatsächlich (und logischerweise) fest und wird dann nicht mehr auf den aktuellen Tag aktualisiert.
Man müsste also den Ausdruck "2014-02-17" durch irgendeinen Code ersetzen, der den aktuellen Tag wiedergibt.
Und da komme ich eben nicht weiter.
Versuch mal
fixedrange 2days
Dann hast du die letzten 2 Tage.
Zitat von: Puschel74 am 17 Februar 2014, 18:46:24
Versuch mal
fixedrange 2days
Dann hast du die letzten 2 Tage.
TATSACHE!!!!!!!! Vielen lieben Dank!!!!!! :)
Grüße
ZitatEDIT: addLog ist nirgends zu finden. Was ist das?
Hmm, wenn ich addLog in das Suchfeld eingebe bekomme ich 44 Beiträge angezeigt.
Selbst im Wiki bekomme ich den richtigen Artikel angezeigt.
http://www.fhemwiki.de/wiki/Plot-Abriss_vermeiden (http://www.fhemwiki.de/wiki/Plot-Abriss_vermeiden)
Grüße
Du hast Recht, mein Fehler!
Ich war wohl noch in einem Unterforum, als ich das gesucht habe! Sorry!
Habs mal wie im Wiki steht implementiert und hoffe, es läuft!
Ich habe bei den logs zwar kein "event-on-change", aber vllt geht es ja trotzdem! Event-on-change ist es aber ja irgendwie dennoch, da ja nur Logeinträge stattfinden, wenn sich was ändert.
Hallo zusammen und allen einen schönen Sonntag!
Ich habe heute ein Problem bei meinen Plots festgestellt:
Wenn ich mir die letzten 2 Tage anzeigen lasse, fehlt links ein Teil! AddLog habe ich in Betrieb und es werden entsprechende Logeinträge vorgenommen. Bei 3 oder mehr Tagen ist alles ok, nur bei 2 Tagen fehlt links was.
Jmd ne Idee, woran das liegen könnte?
Hier die Logeinträge der letzten Tage:
2014-02-20_21:19:30 Raumtemperatur_Soll Temperatur: 22.0
2014-02-20_21:25:08 Raumtemperatur_Soll Temperatur: 22.0
2014-02-20_21:25:08 Raumtemperatur_Soll Temperatur: 22.0
2014-02-20_21:25:08 Raumtemperatur_Soll Temperatur: 22.0
2014-02-20_22:00:01 Raumtemperatur_Soll 18.0
2014-02-20_22:00:01 Raumtemperatur_Soll Temperatur: 18.0
2014-02-20_22:00:01 Raumtemperatur_Soll Temperatur: 18.0
2014-02-20_22:00:01 Raumtemperatur_Soll Temperatur: 18.0
2014-02-20_22:51:44 Raumtemperatur_Soll Temperatur: 18.0
2014-02-20_22:51:44 Raumtemperatur_Soll Temperatur: 18.0
2014-02-20_22:51:44 Raumtemperatur_Soll Temperatur: 18.0
2014-02-20_23:59:00 Raumtemperatur_Soll Temperatur: 18.0 << addLog
2014-02-21_00:01:00 Raumtemperatur_Soll Temperatur: 18.0 << addLog
2014-02-21_05:30:00 Raumtemperatur_Soll 22.0
2014-02-21_05:30:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_05:30:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_05:30:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_09:00:00 Raumtemperatur_Soll 18.0
2014-02-21_09:00:00 Raumtemperatur_Soll Temperatur: 18.0
2014-02-21_09:00:00 Raumtemperatur_Soll Temperatur: 18.0
2014-02-21_09:00:00 Raumtemperatur_Soll Temperatur: 18.0
2014-02-21_15:30:00 Raumtemperatur_Soll 22.0
2014-02-21_15:30:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_15:30:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_15:30:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:01:33 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:01:33 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:01:33 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:38:11 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:38:11 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:38:11 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:39:53 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:39:53 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:39:53 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:42:22 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:42:22 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:42:22 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:50:11 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:50:11 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_17:50:11 Raumtemperatur_Soll Temperatur: 22.0
2014-02-21_22:00:00 Raumtemperatur_Soll 18.0
2014-02-21_22:00:00 Raumtemperatur_Soll Temperatur: 18.0
2014-02-21_22:00:00 Raumtemperatur_Soll Temperatur: 18.0
2014-02-21_22:00:00 Raumtemperatur_Soll Temperatur: 18.0
2014-02-22_08:00:00 Raumtemperatur_Soll 22.0
2014-02-22_08:00:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_08:00:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_08:00:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_16:20:24 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_16:20:24 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_16:20:24 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_16:47:53 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_16:47:53 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_16:47:53 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_16:51:30 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_16:51:30 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_16:51:30 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:03:45 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:03:45 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:03:45 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:05:36 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:05:36 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:05:36 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:07:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:07:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:07:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:09:02 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:09:02 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:09:02 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:10:39 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:10:39 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:10:39 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:37:23 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:37:23 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:37:23 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:39:36 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:39:36 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:39:36 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:41:16 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:41:16 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:41:16 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:56:35 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:56:35 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_17:56:35 Raumtemperatur_Soll Temperatur: 22.0
2014-02-22_23:00:00 Raumtemperatur_Soll 18.0
2014-02-22_23:00:00 Raumtemperatur_Soll Temperatur: 18.0
2014-02-22_23:00:00 Raumtemperatur_Soll Temperatur: 18.0
2014-02-22_23:00:00 Raumtemperatur_Soll Temperatur: 18.0
2014-02-22_23:03:21 Raumtemperatur_Soll Temperatur: 18.0
2014-02-22_23:03:21 Raumtemperatur_Soll Temperatur: 18.0
2014-02-22_23:03:21 Raumtemperatur_Soll Temperatur: 18.0
2014-02-22_23:59:00 Raumtemperatur_Soll Temperatur: 18.0 << addLog
2014-02-23_00:01:00 Raumtemperatur_Soll Temperatur: 18.0 << addLog
2014-02-23_08:00:00 Raumtemperatur_Soll 22.0
2014-02-23_08:00:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-23_08:00:00 Raumtemperatur_Soll Temperatur: 22.0
2014-02-23_08:00:00 Raumtemperatur_Soll Temperatur: 22.0
EDIT: Ah ich denke es könnte daran liegen, dass ich vor 2 Tagen keinen AddLog Eintrag hatte! Da hatte ich irgendein Problem mit AddLog! Werds mal beobachten!
Hallo Michi,
ich habe mit meinem Garagentor das gleiche Problem wie Du. Bekomme es allerdings auch nach dem Durchlesen dieses Threads nicht hin
Meine Plotdatei
# Created by FHEM/98_SVG.pm, 2014-08-27 10:59:50
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 '<TL>'
set ytics ("zu" 0, "offen" 1)
set y2tics ("zu" 0, "offen" 1)
set grid
set ylabel ""
set y2label ""
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]
#FileLog 3:Garagentor146a_offen.*::$fld[2]=~"closed"?1:0
plot "<IN>" using 1:2 axes x1y1 title 'Torstatus' ls l1 lw 2 with steps
Das Ganze sieht dann so aus
mich würde jetzt doch interessieren, ob jemand eine Lösung bezüglich der x-Achsendarstellung gefunden hat.
Ich wünsche mir auch mehr Teilstriche mit entsprechender Zeit /Datumsbeschriftung.
Die Plotabrisslösung klingt ebenfalls gut für mich, ob ich es hinbekomme, wird sich zeigen ;D
Danke,
Svenergy
Möchte keinen Extra Thread aufmachen, habe nur eine Frage zur Regexpression:
Mein Filelog sieht zunächst so aus: define FileLog_WS300 FileLog ./log/FileLog_WS300-%Y.log .*
.* war eine reine Verzweiflungstat, damit überhaupt was hineinkommt, denn meine Sensoren heißen alle anders.
laut Doku ist Regexpression:
devicename:event
Ob devicename der Alias des Sensors ist, den ich mit define erstellt habe, kann ich nur raten, den in der Doku von
define [option] <name> <type> <type-specific> wird es hier als <name> bezeichnet und nicht als <devicename>
Das log selbst ist OK, nur die Einträge des Timers und die zusammengefassten Messergebnisse: A1 T: 7.8 H: 75 Bat: Ok LR: 10
sollen nicht in das Log
Kann man die Regexpression nun so anlegen, dass im Device ein Wildcard steht, dann würde ich den Ws300 in A9 umbenenen und hätte nur die Temperatursensoren im Log
define FileLog_WS300 FileLog ./log/FileLog_WS300-%Y.log A[1-9].*:.*
oder wäre folgendes besser, dann muss man die Sensoren nicht umbenennen:
define FileLog_WS300 FileLog ./log/FileLog_WS300-%Y.log .*(temperature|humidity|battery|lost_receives).*
Ich weiss auch nicht, ob das komplette Log mit regexpression geparst wird, denn die in der Doku angegebene Regexpression
wz:(measured-temp|actuator).*
würde in meinem Fall
A1:(temperature).*
nie funktionieren
was mich einigermaßen verwirrt ..
Daher fische ich im trüben und der rasp1 ist sehr sehr langsam ;-)
Im Log steht momentan:
2017-01-21_15:45:04 WS300Device_timer Next: 15:45:09
2017-01-21_15:45:09 WS300Device_timer Next: 15:45:14
2017-01-21_15:45:14 WS300Device_timer Next: 15:45:19
2017-01-21_15:45:19 WS300Device_timer Next: 15:45:24
2017-01-21_15:45:24 WS300Device_timer Next: 15:45:29
2017-01-21_15:45:29 WS300Device_timer Next: 15:45:34
2017-01-21_15:44:34 A1 T: 7.8 H: 75 Bat: Ok LR: 10
2017-01-21_15:45:34 A1 temperature: 7.8
2017-01-21_15:45:34 A1 humidity: 75
2017-01-21_15:45:34 A1 battery: Ok
2017-01-21_15:45:34 A1 lost_receives: 10
2017-01-21_15:44:34 A2 T: 21.2 H: 41 Bat: Ok LR: 0
2017-01-21_15:45:34 A2 temperature: 21.2
2017-01-21_15:45:34 A2 humidity: 41
2017-01-21_15:45:34 A2 battery: Ok
2017-01-21_15:45:34 A2 lost_receives: 0
2017-01-21_15:44:34 A3 T: 22.6 H: 42 Bat: Ok LR: 0
2017-01-21_15:45:35 A3 temperature: 22.6
2017-01-21_15:45:35 A3 humidity: 42
2017-01-21_15:45:35 A3 battery: Ok
2017-01-21_15:45:35 A3 lost_receives: 0
2017-01-21_15:44:34 A6 T: 3 H: 79 Bat: Empty LR: 11
2017-01-21_15:45:35 A6 temperature: 3
2017-01-21_15:45:35 A6 humidity: 79
2017-01-21_15:45:35 A6 battery: Empty
2017-01-21_15:45:35 A6 lost_receives: 11
2017-01-21_15:44:34 Ws300 T: 21.1 H: 47 P: 1028.9 Willi: 0
2017-01-21_15:45:35 Ws300 temperature: 21.1
2017-01-21_15:45:35 Ws300 humidity: 47
2017-01-21_15:45:35 Ws300 pressure: 1028.9
2017-01-21_15:45:35 Ws300 willi: 0
2017-01-21_15:45:35 WS300Device_timer Next: 15:45:39
2017-01-21_15:45:39 WS300Device_timer Next: 15:45:44
2017-01-21_15:45:44 WS300Device_timer Next: 15:45:49
PS:
Hat mich erstmal Stunden gekostet, rauszubekommen, das man ein FileLog benötigt, da ich angenommen habe, dass er sich die Infos aus dem Logfile zieht, wenn verbose entsprechend hoch gesetzt ist. Ich habe seit Jahren mit dblog nach mysql geloggt und dazu ein perl script angepasst. Die Auswertungen hatte ich von Hand mit gnuplot erstellt und per shell script an einen Webserver hochgeladen, da ich mit der Doku von fhem nicht klar kam und auch nicht klar komme, habe ich das Fahrrad nochmal erfunden. Das war der Stand von vor 5 jahren. Nun möchte ich alles auf den raspi umziehen und per FileLog machen ..
Danke im Voraus
Gruß Thomas
ZitatOb devicename der Alias des Sensors ist, den ich mit define erstellt habe, kann ich nur raten,
Öh, ne da is nix mit raten.
Der Alias ist der Namen den DU in FHEM sehen willst.
Der Name ist einfach der NAME des Devices ganz ohne alias.
ZitatKann man die Regexpression nun so anlegen, dass im Device ein Wildcard steht,
Nein (oder ich hab dich falsch verstanden).
DeviceNAME muss eindeutig sein sonst meckert FHEM sowieso wenn man brav über die FHEM-Befehlszeile arbeitet.
In deiner Logfile-Definition kannst du aber mit Wildcards arbeiten um mehr als nur einen Sensor in das LogFile schreiben zu lassen.
Zitatoder wäre folgendes besser, dann muss man die Sensoren nicht umbenennen:
Das kommt drauf an welche (und wieviele) Sensoren du hast auf denen das Event dann matcht den es schreiben dann ALLE in dieses LogFile.
Vermutlich würde auch einfach ein
define FileLog_WS300 FileLog ./log/FileLog_WS300-%Y.log A.:(temperature|humidity|battery|lost_receives).*
genügen um von ALLEN Sensoren die mit A beginnen und danach EIN weiteres Zeichen haben die Events in der Klammer in dieses EINE LogFile zu bekommen.