Hauptmenü

SVG gplot Berechnen !

Begonnen von Tom111, 09 März 2014, 08:50:51

Vorheriges Thema - Nächstes Thema

Tom111

ich möchte zu dem Wert einer Kurve im Diagramm z.B.
$data{currval1}
einen festen Wert addieren z.B. 10, wie muss ich das schreiben ?

habe schon folgendes probiert :
$data{currval1++10}
$data{currval1++10;}
$data{currval1+=10}

nichts davon funktioniert  :(
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

Kuzl

geht es denn mit
$data{currval1 + 10}
nicht?

ich wüsste nicht warum man da jetzt das ++ verdoppeln müsste oder so das ist ja eigendlich eine ganz normale Rechenoperation und kein Vergleich o.ä

Tom111

Hallo Kuzl,
nein,.... leider klappt dein Vorschlag auch nicht:
ZitatBareword "currval1" not allowed while "strict subs" in use at (eval 48116) line 1.

:-\
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

betateilchen

das geht so nicht.

Aus der commandref zu FileLog:

ZitatThe string is evaluated as a perl expression. @fld is the current line splitted by spaces. Note: The string/perl expression cannot contain spaces, as the part after the space will be considered as the next column_spec.

Die Syntax in <fn> für sowas lautet also - zum Beispiel um zum Wert immer 23 dazuzuzählen:

$fld[n]+23

wobei n für das gewählte Datenfeld aus der Logzeile steht, zu dem Du etwas hinzuaddieren willst.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Tom111

Also, irgendwie bekomm ich das nicht hin.

Aber damit ihr euch eine Vorstellung davon machen könnt was ich überhaupt vorhabe bzw. meine,
hefte ich mal ein paar Bilder mit Kommentar hier an :

Also, ich habe diverse Überwachungskameras deren Status ich in einer LogDatei speichere und
via Diagramm anzeigen lassen kann. Alles klappt auch wunderbar, nur möchte ich gerne in der Überschrift des Plot's
den aktuellen Status als "0" für ausgeschaltet, und (in meinem Fall) als "80" für eingeschaltet sehen.
Rein logisch würde somit immer nur der Wert 80 oder 0 erscheinen weil eine eingeschaltete Kamera im positiven Bereich
liegt und genau umgekehrt proportional dazu im negativen Bereich wenn sie ausgeschaltet ist.

So sehe ich halt nur, wenn eine Kamera im positivem Bereich liegt ist sie eingeschaltet,
eine Kamera mit einem negativen Wert ist ausgeschaltet.

Also in diesem Fall sind Kamera 03 und Kamera 04 ausgeschaltet!

(http://img5.fotos-hochladen.net/uploads/201403111643u6y8p34qms.png)



Und hier die "Attributes", ich dachte mir es würde in meinem Fall reichen hinter ($data{currval1}) ein +10 zu setzen,
bzw. ($data{currval2})+20 ($data{currval3})+30 ....... usw.
So würde der Status meiner Cam's immer "0" oder "80" sein, aber genau das bekomm ich nicht hin.

(http://img5.fotos-hochladen.net/uploads/201403111644ar2jm63qzy.png)


Auch der Code von "betateilchen" (den ich mindestens 30 mal abgeändert und alle möglichen Versionen
durchprobiert habe) erzeugt nur Fehler.  :-\

Ach und noch eins, html und php ... ok, aber mit Perl hab ich mich bis heute noch gar nicht befasst!


Groß
Tom
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

betateilchen

grmpf....  sag das doch gleich.

Ich dachte, du willst einen zu plottenden Wert manipulieren, nicht den Plot-Titel.

So ganz hab ich das mit dem Status noch nicht verstanden. Warum kannst Du denn nicht einfach ON und OFF verwenden? Welchen Status haben denn die Kameras in ihren Readings?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Tom111

Hallo nochmal,
also in den Readings der Cams steht "present" und "absent"!
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

betateilchen

Dann nutze doch die eventMap um present und absent in on und off umzusetzen, das ist doch viel einfacher.

Und on/off läßt sich auch problemlos plotten, dazu gibt es eine Beispiel fs20.gplot.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Tom111

ja, du magst Recht haben, es wäre mir schon damit geholfen wie ich anstatt die Zahlen (Auswertung der y-Achse) mit $data{currval3},
so umsetzen kann dass ich schon mal "absent" und "present" in der Überschrift angezeigt bekomme.
Wenn ich das hätte dann wäre ich schon mal (wieder) ein Schritt weiter.  ???
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

betateilchen

#9
attr <plotName> label "Kamera1: ".Value('Kamera1')
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Tom111

Oh man, vielen Dank an "betateilchen", genau das war es!!
Jetzt bin ich wieder einen Schritt weiter und kann mich endlich anderen Problemen zuwenden  :D

zum Vergleich hier mein neuer Plot (hab die alte Log-Datei natürlich gelöscht, weil present und absent passt ja nicht mehr,
die neue Datei mit ON OFF baut sich aber grade wieder auf):

(http://img5.fotos-hochladen.net/uploads/201403111923235omgx81f.png)

Nochmals vielen Dank "betateilchen", du hast mir sehr geholfen :)

Gruß
Tom
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

Puschel74

Hallo,

in der fs20.gplot hätte sich on und off an present und absent anpassen lassen  ;)

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.

Tom111

Zitat von: Puschel74 am 11 März 2014, 19:42:18
in der fs20.gplot hätte sich on und off an present und absent anpassen lassen  ;)
du meinst damit ich die Logdaten behalten kann !?
Aber das ist mir auch nicht wichtig, in diesem Fall hab ich einfach die alte Logdatei gelöscht, so ist das "sauber"!
Übrigens benutze ich für die Kameras nicht die fs20.gplot sondern meine eigene  ;)

viele Grüße
Tom
FHEM 5.9 auf Raspberry Pi - 3B+ - Stretch-5.10.88+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.67
Fritz!Box 7490 OS 07.29 / Fritz!Dect200 / Fritz!Powerline 546E
FS20ST-4/ FS20 DI-5/ FS20LS/ FS20 PIRI-2-KU/ FS20 TFK/ FS20S4A/FS20 SU-3/FS20 S20-3
HMS100TF/FHT80TF-2/ASH2200/S300TH/MiLight-Bridge V

betateilchen

Es geht auch nicht darum, die fs20gplot zu verwenden, sondern daraus zu lernen und zu verstehen, wie man Zustände (on/off, present/absent) in numerische Werte zum Plotten übersetzen kann.

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

Puschel74

Auch deine eigene hätte sich an present und absent anpassen lassen  ;)
Eine eigene gplot bietet sich sowieso an da die fs20.gplot ggf. bei einem update überschrieben werden kann.
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.