logProxy modul zum manipulieren und ergänzen von SVG plots

Begonnen von justme1968, 26 August 2014, 22:47:55

Vorheriges Thema - Nächstes Thema

justme1968

die x achse muss immer von kleinen werten links zu grossen werten rechts verlaufen.

das ist aber eigentlich 'normal'. was spricht denn gegen diese normale orientierung?

was sind das denn für werte um die es geht?

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

HotteFred

Zitat von: justme1968 am 12 Februar 2015, 00:20:33

was sind das denn für werte um die es geht?

gruss
  andre

Hallo Andre, es geht mir um die grafische Darstellung meiner aktuell eingestellten Heizkennlinie.
Schau mal in diese Dokument auf Seite 34.
http://de.documents.buderus.com/download/pdf/file/6720641642.pdf

Gruß
Fred
BananaPi mit FHEM, KM50, Velux Raumluftsensor, jede Menge HM-CC-RT-DN, jede Menge 1Wire Zeugs

justme1968

ich hab mal kurz im svg modul geschaut. das wird recht aufwändig das einzubauen.

vermutlich ist es einfacher wenn du die x achse wie bisher laufen lässt die punkte so umrechnest (an x=0 spiegeln) das die darstellung so ausschaut wie du es willst. du kannst dann per xtics die beschriftung so anpassen das alles korrekt ausschaut.

der einzige nachteil wäre das beim messen die 'falschen' Koordinaten angezeigt werden würden.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

HotteFred

Zitat von: justme1968 am 13 Februar 2015, 15:20:28

vermutlich ist es einfacher wenn du die x achse wie bisher laufen lässt die punkte so umrechnest (an x=0 spiegeln) das die darstellung so ausschaut wie du es willst. du kannst dann per xtics die beschriftung so anpassen das alles korrekt ausschaut.

Hallo Andre,

danke. Dann schaue ich mir das mal an...

Viele Grüße
BananaPi mit FHEM, KM50, Velux Raumluftsensor, jede Menge HM-CC-RT-DN, jede Menge 1Wire Zeugs

daschauher

Servus Andre,
dein Modul läuft nun seit einiger Zeit sehr zuverlässig...vielen Dank für die tolle Arbeit!
Mir ist gerade aufgefallen das mein Logfile ziemlich viele Einträge dieser Art hat:
PERL WARNING: Argument "off" isn't numeric in multiplication (*) at ./FHEM/98_logProxy.pm line 1037
Hast du eine Ahnung woher das kommt? Hab ich was falsches konfiguriert oder ist es evtl ein Bug?
Ich habe noch nicht nachgesehen da ich logproxy überall verwende und ich so einige plots angelegt habe.
Vielleicht hast du einen Tip für mich.

Grus Markus

justme1968

du musst (wie sonst auch beim plotten) nicht numerische reading erst in numerische umwandeln bzw. dafür sorgen das deine column sec genau genug ist um nicht aus versehen nicht numerische readings zu erwischen.

das gilt auch für redings die manchmal zahlen und manchmal nicht numerisch werte enthalten. also z.bn on und off und dim stufen.

die fehler zeile deutet darauf hin das du das spinnennetz diagramm verwendest.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

daschauher

#246
Ich glaube ich weiß wo das Problem steckt. Es ist richtig, ich verwende das Spinnennetz Diagramm.
Allerdings habe ich am Code nichts geändert, was mich aber zuerst stutzig gemacht hat.
Doch dann ist es mir wieder eingefallen was jetzt plötzlich anders ist.
Ursprünglich hatte ich den Einstellbereich meiner Thermostate begrenzt auf z.B. 15 bis 21 Grad.
Dieses habe ich vor kurzem etwas gelockert auf das Maximum, 4,5 bis 30 Grad. Hier kann man dann anstelle einer Temperatur auch on und off wählen.
Was ich auch bei 2 Thermostaten gemacht habe, da ich sie nur als Anzeige benutze und dort gar keine Heizung vorhanden ist.

Danke für deine Info, dann weiß ich jetzt woher es kommt und das es nichts schlimmes ist.

grüsse
markus

p.s.:
oder gibt es vielleicht eine einfache Lösung wenn in dem Reading hier ein "off" auftaucht dieses in eine "0" umzuwandeln?
#logProxy Polar::{[map{ReadingsVal($_,"desired-temp",0)}devspec2array(".*Climate")]}

Tom3011

Hallo zusammen
ich weiss leider nicht ob ich hier richtig bin, aber wenn nicht werde ich hoffentlich weitergereicht :)
seit dem letzten update sieht mein Plot nicht mehr so aus wie vorher
An den Einstellungen habe ich nichts verändert.

nochmal Sorry sollte ich falsch sein

Gruß Tom3011

Tom3011

Hallo zusammen
mir ist aufgefallen, dass mein Logfile früher anderst aussah als heute.
hoffentlich kann mir jemand helfen

Danke

Gruß Tom

frank

#249
hallo andre,

ich bekomme immer warnings bei nutzung von "constY" mit folgendem <value>:
(split(" ",ReadingsVal("Wetter.Nord","R-lowBatLimitTHPL",0)))[0]

das reading liefert "1 V". wenn ich den ausdruck in der eingabezeile von fhem ausführe bekomme ich "1" angezeigt. warum funktioniert das nicht über den svg-editor? also geplottet wird schon, aber halt mit "gemeckere". genauso, als wenn ich nur readingsval benutze.

2015.03.03 19:58:46.579 1: PERL WARNING: Argument "1 V" isn't numeric in numeric lt (<) at ./FHEM/98_SVG.pm line 1116.
2015.03.03 19:58:46.607 1: PERL WARNING: Argument "1 V" isn't numeric in numeric gt (>) at ./FHEM/98_SVG.pm line 1118.
2015.03.03 19:58:46.964 1: PERL WARNING: Argument "1 V" isn't numeric in sprintf at ./FHEM/98_SVG.pm line 1946.


gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

justme1968

das problem ist das in der column_spec dürfen keine leerzeichen vorkommen. das gilt für alle log devices. also auch filelog und dblog bzw ursächlich das svg modul.

du kannst entweder alles in eine sub in 99_myUtils auslagern und diese nur aufrufen oder die zeile z.b. auf einen regex match auf \d* umbauen und dann $1 verwenden. dann kommst du ohne leerzeichen aus.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

frank

danke. aber echt tricky, da doppelpunkt natürlich auch nicht ging. damit habe ich jetzt wohl erfolg:

if(ReadingsVal("Wetter.Sued","R-lowBatLimitTHPL",0)=~/^(\d+).*/){$1}else{0}

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

vbs

Ich hab jetzt mal angefangen, mich mit dem logProxy zu beschäftigen, da ich gerne bei solchen Plots die "Anfangslücke" beheben würde:
(https://dl.dropboxusercontent.com/u/24641738/svg_anfang.jpg)

Der Weg wäre ja wahrscheinlich die extend-Option. Das funktioniert auch soweit. Mein Problem ist nun, dass ich ja bei extend ein Wert angeben muss. Was trägt man denn da ein, damit es "immer funktioniert" aber trotzdem nicht beliebig groß ist? Ich weiß ja nicht, wie groß die Lücke ist und ich möchte da ja auch ungern "99999999" eintragen.

Die einzige Idee, die ich hätte, wäre, da etwas mit event-min-interval im Device zu machen. Also irgendwie dafür zu sorgen, dass zB mindestens alle 4 Stunden ein Event erzeugt wird. Also 4 Stunden als Obergrenze. Dann könnte man zum Beispiel 4,5 Stunden bei extend eintragen mit dem Wissen, dass ich dann auf jeden Fall auf ein Event treffe.

Oder wie macht ihr das?

justme1968

das ist eine möglichkeit, die andere ist etwas großzügig zu sein und 1-2 tage anzugeben. das scheint zwar auf den ersten blick viel unnötige daten zu beuteten aber tatsächlich fällt es absolut gesehen nicht wirklich ins gewicht wenn es nicht gerade auf einer fritzbox läuft.

wenn du z.b. einen tag darstellst hast du zwar die datenmenge theoretisch verdreifacht, aber die gesamtmenge ist immer noch überschaubar. wenn du weiter raus zoomst und auf monats ebene bist hast du die datenmenge um 10% vergrößert auf jahresebene um noch nicht mal 1%. da fällt es denn in relation zu dein eigentlichen daten nicht mehr ins gewicht.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

vbs

Ok, danke, da du da deinen Segen gibts, hab ich jetzt einfach mal 1 Tag eingetragen... Ich denke mal, innerhalb eines Tages sollte sich Temperatur/Feuchte ja wohl mal ändern... Das mit dem event-min-interval würde wieder in ein elendes Gefummel ausarten :>