Schwarze Rahmen um alle SVG Plots

Begonnen von UweUwe, 04 Oktober 2014, 20:48:16

Vorheriges Thema - Nächstes Thema

UweUwe

Hallo Gemeinde,

ich habe auf 2 Raspberry PIs in 2 völlig getreten Häusern FHEM zur Gebäudeautomatisierung.
Ganz unterschiedliche Geräte mit einem komplett unterschiedlichen cfg file.

Ich lasse mir Temperatur etc. über die automatisch generierten SVG plots anzeigen, in beiden Installationen.
Seit ca. 18 Monaten ohne Probleme.

Ich bin gerade dabei noch einige Ergänzungen in den beiden cfg Dateien zu machen.
Plötzlich erscheinen alle svg Plots mit einem schwarzen Trauerrand und machen dabei die Beschriftung nicht mehr lesbar.
Ich benutze "bright". Wenn ich in "dark" umstelle, ist die Beschriftigung noch lesbar.
Welchen Pararmeter habe ich falsch gesetzt?

Aktuell werden die SVG Plots immer für einen Tag dargestellt. Eine Änderung der "Zeitskalierung", also eine Darstellung von mehreren Tagen ist dann manuell machbar.
Ist es auch möglich gleich bei der ersten Darstellung des Plots den Zeitraum festzulegen (zum Beispiel die letzten 5 Tage?) 

Puschel74

Hallo,

ZitatIst es auch möglich gleich bei der ersten Darstellung des Plots den Zeitraum festzulegen (zum Beispiel die letzten 5 Tage?) 
attr <Name_des_Plots> fixedrange 5days
Das sollte aber auch so (oder so ähnlich) in der commandref stehen - und auch im Forum zu finden sein.

ZitatWelchen Pararmeter habe ich falsch gesetzt?
Gute Frage - welche Parameter hast du den gesetzt?
Lies mal das und liefer mal die Infos : http://forum.fhem.de/index.php/topic,16311.0.html

Warum liest niemand diesen Beitrag  :o

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

UweUwe

Hallo Puschel74,

ich beginne jetzt mit dem sicherlich notwendigen Hintergrund für meine Fragen:

1. Schwarzer Rand: habe gestern fhem einem "update" unterzogen. Seit dem habe ich auf all meinen Zugriffen, Web, webtablet, und webphone einen schwarzen Rand um die SVG Plots. Ich verwende den automatisch durch autocreate erzeugten Code und passe die Namen an.
Zum Beispiel:

define wz_Temp CUL_WS 4
attr wz_Temp room Wohnzimmer
define FileLog_wz_Temp FileLog ./log/wz_Temp%Y.log wz_Temp:T:.*
attr FileLog_wz_Temp logtype temp4hum6:Temp/Hum,text
attr FileLog_wz_Temp room Wohnzimmer
define SVG_wz_Temp SVG FileLog_wz_Temp:temp4hum6:CURRENT
attr SVG_wz_Temp icon temp_inside
attr SVG_wz_Temp label "Wohnzimmer Temperatur Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_wz_Temp room Wohnzimmer


2. Daten werden im SVG Plot nicht dargestellt,
Ich habe 5 Funkt Raumregler FHT im Einsatz. Hier lasse ich mir auch den Temperaturverlauf anzeigen.
Zum Beispiel:


define Badtemperatur FHT 381f
attr Badtemperatur retrycount 3
attr Badtemperatur room Bad
define FileLog_Badtemperatur FileLog ./log/Badtemperatur-%Y.log Badtemperatur
attr FileLog_Badtemperatur logtype fht:Temp/Act,text
attr FileLog_Badtemperatur room Bad
define SVG_Badtemperatur SVG FileLog_Badtemperatur:fht:CURRENT
attr SVG_Badtemperatur label "Badtemperatur Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_Badtemperatur room Bad

Der Temperatur-Plot zeigt keinerlei Daten, und damit keine Kurve.
Gehe ich dann in die Details des SVG_Badtemperatur, so sehe ich das regelmässig unter
"Example lines for input"
Daten empfangen werden.
Aktiviere ich dann write .gplot file so wird der Graph erzeugt und ich sehe den korrekten Verlauf des Graphen auch im "Raum" Bad" und unter "everything".
Ich habe dieser Anfrage ein Bild von den Details SVG_Badtemperatur beigefügt, bevor ich write .gplot gedrückt habe.

Was mache ich hier falsch.





Puschel74

Hallo,

Teil 1 - keine Ahnung.

Teil 2 - im Screenshot sehe ich nur das zwar ein Device ausgewählt wurde aber kein Reading.
Für Temperatur würde ich dir mal das Reading temperature oder auch measured-temp (je nachdem was du sehen möchtest) empfehlen.
Für die Ventilstellung würde sich actuator anbieten.

Da ich den Editor aber nicht verwende kann ich hier nur raten.

Teil 3 - ich vermute deine Frage mit fixedrange ist beantwortet?

Die Codes machen sich übrigens recht gut zwischen 2 Code-Tags - der Text wird damit ein bischen übersichtlicher  ;)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

UweUwe

Hallo,

ich habe jetzt noch einmal zwei Tage investiert, und komm mit meinen SVG Plots einfach nicht weiter. Es sollte sehr einfach sein was sich darstellen möchte.
Ich habe in meinem System fünfmal FHT8V und möchte jeweils die Temperatur und die Stellung des Heizkörperventil darstellen, grafisch. Und daran scheitere ich.
Ich bin sogar so weit gegangen, dass ich alle fünf Geräte aus meinem fhem.cfg Programm gelöscht habe. Mit autocreate sind dann diese fünf Geräte wieder erschienen,
Die automatisch erzeugten grafischen Darstellungen zeigen wiederum keinen Inhalt.
Beispielhaft ein Gerät, wie es automatisch erzeugt wurde:

define FHT_5b0a FHT 5b0a
attr FHT_5b0a retrycount 3
attr FHT_5b0a room FHT
define FileLog_FHT_5b0a FileLog ./log/FHT_5b0a-%Y.log FHT_5b0a
attr FileLog_FHT_5b0a logtype fht:Temp/Act,text
attr FileLog_FHT_5b0a room FHT
define SVG_FHT_5b0a SVG FileLog_FHT_5b0a:fht:CURRENT
attr SVG_FHT_5b0a label "FHT_5b0a Min $data{min1}, Max $data{max1}, Last $data{currval1}"

Ich gehe davon aus, dass die automatische Generierung ein vollständiges Ergebnis liefert und ich nichts mehr nacharbeiten muss. Das ist doch korrekt?

Schaue ich mir nun den FileLog_FHT_5b0a an, so sehe ich folgende Werte:

2014-10-08_20:12:18 FHT_5b0a temperature: 18.0
2014-10-08_20:12:19 FHT_5b0a battery: ok
2014-10-08_20:12:19 FHT_5b0a lowtemp: ok
2014-10-08_20:12:19 FHT_5b0a window: closed
2014-10-08_20:12:19 FHT_5b0a windowsensor: ok
2014-10-08_20:12:19 FHT_5b0a warnings: none
2014-10-08_20:14:13 FHT_5b0a actuator: 0%
2014-10-08_20:18:05 FHT_5b0a actuator: 0%
2014-10-08_20:20:01 FHT_5b0a actuator: 0%
2014-10-08_20:21:57 FHT_5b0a actuator: 0%
2014-10-08_20:23:53 FHT_5b0a actuator: 0%
2014-10-08_20:25:49 FHT_5b0a actuator: 0%
auch das scheint für mich o. k. zu sein.

In der Anlage habe ich nun eingefügt, welche Parameter der SVG_FHT_5b0a zeigt.

Ich habe keine Ahnung was ich noch machen soll. Dies gilt übrigens für alle fünf Geräte. Andere Geräte, wie zum Beispiel Temperatur oder Temperatur/Feuchte Messgerät funktionieren prima und zeigen einen korrekten Grafen an.

UweUwe

Hallo, ich habe wohl das falsche Bild als Datei angehängt.
Hier die richtige...

betateilchen

Zitat von: UweUwe am 05 Oktober 2014, 15:25:27
1. Schwarzer Rand: habe gestern fhem einem "update" unterzogen. Seit dem habe ich auf all meinen Zugriffen, Web, webtablet, und webphone einen schwarzen Rand um die SVG Plots.

Works as designed. Der schwarze Rahmen ist style-abhängig. Zum Test kannst Du mal einen anderen Style in Deinem Frontend auswählen, dann müsst das anders aussehen.

Und die automatisch angelegten SVG-Plots haben bei mir in den seltensten Fällen funktioniert. Da bin ich mit manuellem Anlegen schneller fertig.
Willst Du alle 5 Geräte in einem gemeinsamen Plot anzeigen oder willst Du EIN Plotfile für fünf unterschiedliche Geräte verwenden?

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

UweUwe

Hallo betateilchen,

danke für die Info. Ich möchte zuerst mal jeweils einen Plot für die jeden FHT. Ist es für mich ok, wenn ich diesen Graphen manuell erstellen muss.
Ich habe mich auch bemüht eine Beschreibung (how to) zu finden, wie ich manuell einen SVG-Plot erstellen kann.
Ich hab mich wirklich sehr bemüht, aber ohne Erfolg. Kannst du mir helfen?

Ich habe verschiedene Versuche auch unternommen und war immer nur in der Lage, den Graphen für einen FHT80 korrekt darzustellen.
Falls ich denn den zweiten FHT80 Graphen umstellte, war der bereits umgestellt Graph wieder incorrekt, also ohne Daten.

Gibt es denn eine Anleitung , beginnend auf niedrigem Wissensniveau, wie man einen Graphen manuell erstellt?

Das wäre eine grosse Hilfe für mich.

Vielen Dank

betateilchen

Zitat von: UweUwe am 09 Oktober 2014, 11:08:30
Gibt es denn eine Anleitung , beginnend auf niedrigem Wissensniveau, wie man einen Graphen manuell erstellt?

1. Schritt: Du brauchst ein Logfile das die zu plottenden Daten enthält
2. Schritt: In der Detailansicht des Logfiles gibt es einen Link "Create SVG.." den klickst Du an und landest im Plot-Editor
3. Schritt: im Plot Editor wählst Du die entsprechenden Daten aus, die geplottet werden sollen und machst die sonstige Gestaltung

Den Button "write gplot File" braucht man eigentlich gar nicht, weil der Editor die Änderungen selbsttätig abspeichert.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

UweUwe

Hallo betateilchen,

danke für den Hinweis. Jetzt habe ich noch eine Frage zur Vorgehensweise:
Am Beispiel FHT_5b0A:


Zeile 1 define FHT_5b0a FHT 5b0a
Zeile 2 attr FHT_5b0a retrycount 3
Zeile 3 attr FHT_5b0a room FHT
Zeile 4 define FileLog_FHT_5b0a FileLog ./log/FHT_5b0a-%Y.log FHT_5b0a
Zeile 5 attr FileLog_FHT_5b0a logtype fht:Temp/Act,text
Zeile 6 attr FileLog_FHT_5b0a room FHT
Zeile 7define SVG_FHT_5b0a SVG FileLog_FHT_5b0a:fht:CURRENT
Zeile 8 attr SVG_FHT_5b0a label "FHT_5b0a Min $data{min1}, Max $data{max1}, Last $data{currval1}"

Zeile 1 bis 6 und Zeile 8 lasse ich stehen.
Zeile 7 lösche ich weg aus dem Script und erstelle manuell auf Basis des Filelog_FHT_5b0a eine SVG Graphen, so wie von dir beschrieben.
Der SVG Editor schreibt dann in mein script den entsprechenden Befahl, den ich mir auch anschauen kann.

Viele Grüsse



UweUwe

Hallo,

ich bin jetzt einen Schritt weitergekommen.
Brauche aber noch einen Hinweis.

Ich habe jetzt verstanden, dass die automatisch erzeugten Diagramme nicht korrekt sind.
Also habe ich in den FHEM Skript die Zeilen define SVG und attr SVG maskiert.

Daraufhin gemäss eurer Anweisung:

1. Schritt: Du brauchst ein Logfile das die zu plottenden Daten enthält
2. Schritt: In der Detailansicht des Logfiles gibt es einen Link "Create SVG.." den klickst Du an und landest im Plot-Editor
3. Schritt: im Plot Editor wählst Du die entsprechenden Daten aus, die geplottet werden sollen und machst die sonstige Gestaltung

den Plot Editor gewählt und auch erfolgreich einen ersten Plot erzeugt.

Jetzt noch 2 Fragen:

1. Beschreibung:
wo finde ich eine Beschreibung für die "sonstige Gestaltung" des PlotEditor?
Hab wirklich intensiv gesucht.
Also eine Beschreibung der Syntax und des Inhaltes der verschiedenen Punkte:

z.B. Input: Column, Regexp, Default Value, Function, ...

dann z.B. weiter unten "Probably assoziated with" ?

oder "Extend devStatelcon"

oder Set SVG_Filelog..... copyGPLOTFile  ?

Einfach also eine Beschreibung dieser Seite..

2. Sicherung
wohin spreichert FHEM denn die Konfigurationdaten für den SVG Plot.
Ich sehe in meinem FHEM Script, dass einige wenige Konfigurations-Daten dahin zurückgeschrieben werden. Aber eben nicht alle.
im Falle eines Absturzes des FHEM Systemes gehe ich heute davon aus, dass ich mit meinem SCRIPT, das ich ja irgendwo zusätzlich sichere, mein System wieder aufbauen kann.
Dazu sollte aber alle Befahle in dem Script abgespeichert sein.  Wo mache ich meinen Denkfehler?

Viele Grüsse

Uwe




krikan

Zitat von: Jochen68 am 26 Dezember 2014, 12:15:35
Ich finde die Beschreibung auch nicht mehr, möchte einen "Text" in "Zahl" umwandeln und anzeigen. Ich meine , dass das mit PLOT funktioniert, aber wo steht das noch ?
Schau mal: http://www.fhemwiki.de/wiki/Plots_erzeugen#.gplot-Editor und in den dort verlinkten Forumsbeiträgen

krikan

Auf den ersten Blick fehlt unter anderem die "Function" wie in den verlinkten Beiträgen beschrieben.

krikan

Nein, so etwa im Ploteditor "Function:" $fld[2]=~"on"?1:0
Schau Dir in den Beispielen mal die Screenshot an oder das schrittweise Beispiel im Wiki zu EnOcean.

krikan

#14
Puh!  ;)

Zitat von: Jochen68 am 26 Dezember 2014, 13:27:59
zu EnOcean:
Ich habe keinen Funksender ...
Das war mir fast klar. Nur im hier http://www.fhemwiki.de/wiki/Plots_erzeugen#.gplot-Editor verlinkten EnOcean-Bsp ist es schrittweise hinterlegt. Transferleistung ist aber notwendig. Sorry, wenn es zu undeutlich war.

Zitat von: Jochen68 am 26 Dezember 2014, 13:27:59
Wo ist denn eine Beschreibung von "Function" "($fld[2]=~"on"?1:0)"
Das ist die Funktion, wie die Worte im Log in plotbare Zahlen umgesetzt werden. Also aus einem enthaltenen on wird 1 und sonst eben 0. Die Nummer x in $fld[x] bezeichnet die Spalte im Log, die so analysiert werden soll.