FHEM Forum

FHEM => Frontends => SVG / Plots / logProxy => Thema gestartet von: stefan-dd am 13 August 2016, 17:24:28

Titel: Plot für Anwesenheit
Beitrag von: stefan-dd am 13 August 2016, 17:24:28
Hallo,
Ich möchte ein Plot für die Anwesenheit erstellen. Es soll eine waagerechte Linie zwischen
2016-08-13_12:52:54 Stefan_Zuhause on
2016-08-13_14:56:58 Stefan_Zuhause off
gezeichnet werden. Wenn derjenige nicht da ist, soll keine Linie erscheinen. Siehe Bild, grüne Linie. (diese wird aber durchgängig gezogen, funktioniert nicht)
An den anderen 2 Linien kann die An und Abwesenheit erkannt werden, sieht aber nicht eindeutig aus.

Weiterhin erfolgt in der Tagesansicht keine Verbindung zum Vortag . In der Wochenansicht ist die Verbindung da. Die Linien beginnen am ersten Log Eintrag des Tages.

#Homestatus_log "0.9":Stefan_Zuhause.*::$fld[2]=~"on"?0.9:0.95
#Homestatus_log "0.8":Petra_Zuhause.*::
#Homestatus_log "0.7":Fabian_Zuhause.*::$fld[2]=~"on"?0.7:0.75

plot "<IN>" using 1:2 axes x1y1 notitle ls l0 lw 2 with fsteps,\
     "<IN>" using 1:2 axes x1y2 notitle ls l1 lw 2 with steps,\
     "<IN>" using 1:2 axes x1y2 notitle ls l2 lw 2 with fsteps,\


Meine Fragen: Wie bekommt man die Verbindung zum Vortrag? Wie kann man die Linien nur bei Anwesenheit zeichnen?

Danke
Titel: Antw:Plot für Anwesenheit
Beitrag von: justme1968 am 13 August 2016, 17:45:02
verbindung zum vortag gibt es per logProxy. oder addLog. beides siehe wiki.

schau ob die linie weggelassen wird wenn du undef bei abwesend verwendest. ansonsten mit handarbeit und ebenfalls per logProxy.

gruss
  andre
Titel: Antw:Plot für Anwesenheit
Beitrag von: stefan-dd am 14 August 2016, 16:51:49
Ich habe mich mit log Proxy nun beschäftigt, komme aber zu keinem richtigen Ergebnis.

meine Versuche:

#lp FileLog:Homestatus_log:3:Petra_Zuhause,offset=-60*60*24,extend=60*60*24:Fabian_Zuhause::
#lp ConstY:<y>[,<von>[,<bis>]]

Zu dem ersten Versuch zeichnet er zumindest eine Linie. Ich dachte damit erreiche ich "Erweitern des zu plottenden Bereichs um ausserhalb liegende Anfangs- und Endwerte". Funktioniert aber nicht so richtig.
Dann sollten die An und Abwesenheiten durch eine Linie gekennzeichnet werden. In Höhe y=0.7, von - on, bis - off. Wie wendet man dies aber richtig an. Hab da leider kein Beispiel gefunden.

Danke
Titel: Antw:Plot für Anwesenheit
Beitrag von: justme1968 am 14 August 2016, 17:05:15
mit extend erweiterst du den bereich. offset verschiebt. du willst nur erweitern ohne zu verschieben.

was genau möchtest du it ConstY machen? im wiki sind zwei beispiele.

gruss
  andre
Titel: Antw:Plot für Anwesenheit
Beitrag von: stefan-dd am 14 August 2016, 17:16:31
Ich will erweitern ohne Verschieben.
Die der on/off Status soll auf einer festen y Position dargestellt werden. on - Linie da, off . Linie weg
Titel: Antw:Plot für Anwesenheit
Beitrag von: justme1968 am 15 August 2016, 16:35:21
dann lass offset weg.

wenn das geht schau ob es mit dem undef vorschlag von oben geht teile weg zu lassen, wenn nicht kannst du eine logProxy postFn hinzufügen die dann noch ausbildet was nicht da sein soll.
Titel: Antw:Plot für Anwesenheit
Beitrag von: stefan-dd am 15 August 2016, 17:51:39
Hallo,
das habe ich versucht.

1.)
#lp FileLog:Homestatus_log:3:Fabian_Zuhause.*::$fld[2]=~"off"?0.7:0.75
2.)
#lp FileLog:Homestatus_log:3:Fabian_Zuhause,extend=60*60*24:Fabian_Zuhause.*::$fld[2]=~"on"?0.5:0.55
3.)
#lp ConstY:0.4[,on[,off]]

Das ist mein Versuch: die Variante "1.)" geht über den Proxy, also funktioniert dies erst einmal. Das erweitern "2.)" funktioniert gar nicht, da kommt nur eine Linie. Und der 2. Wunsch "3.)" on/off auf einer Linie unterzubringen habe ich keinen Ansatz.
Titel: Antw:Plot für Anwesenheit
Beitrag von: stefan-dd am 15 August 2016, 22:29:35
Ich habe jetzt auf die Datenbankversion umgestellt.
Vielleicht ist es dort die Hilfe einfacher.


#logdb HandyFabian:presence
#lp DbLog:HandyFabian:presence


Das erweitern sollte bei Nutzung der presence Funktion kein Problem mehr sein.
Wie bekomme ich die Darstellung in einem Bereich, und idealerweise auf einer Linie hin?