neues modul 98_logProxy zum manipulieren und ergänzen von SVG plots

Begonnen von justme1968, 16 November 2014, 18:34:09

Vorheriges Thema - Nächstes Thema

justme1968

ab morgen ist das in diesem thread http://forum.fhem.de/index.php/topic,26529.msg195056.html#msg195056 modul logProxy im update enthalten.

hiermit lassen sich die per SVG modul geplotteten daten manipulieren und durch zusätzliche informationen ergänzen. es lassen sich die daten aus mehreren FileLog und DbLog devices in einem plot kombinieren und plots automatisch um ausserhalb des sichtbaren bereiches liegende anfangs- und endwerte ergänzen. mit den beiden mitgelieferten beispielfunktionen lassen sich wochenprofile von homematic und max thermostaten sowie von Heating_Controll und WeekdayTimer plotten oder auch beliebige andere funktionen wie z.b. sonnenauf- und -untergangzeiten.

der zugehörige wiki artikel findet sich hier: http://www.fhemwiki.de/wiki/LogProxy

beispiele und screenshots zur anwendung finden sich im oben verlinkten thread oder im wiki.

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

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

justme1968

ab morgen unterstütz das logProxy modul plots in polar koordinaten bzw. 'spinnennetz' darstellung.

hierzu wird das SVG device über attr <mySVG> plotsize 340,400 quadratisch gemacht, die darstellung über das plot file in den x/y modus gebracht und die zu plottenden daten als array an den neuen plot typ Polar übergeben:
set xtics ()
set ytics ()
set y2tics ()

set xrange [-40:40]
set yrange [-40:40]

#logProxy Polar::{[map{ReadingsVal($_,"temperature",0)} devspec2array("MAX.*")]}
#logProxy Polar::{[map{ReadingsVal($_,"desiredTemperature",0)}devspec2array("MAX.*")]}
#logProxy Polar::{[map{ReadingsVal($_,"temperature",0)}devspec2array("MAX.*")]}
#logProxy Polar::{[devspec2array("MAX.*")]}

plot "<IN>" using 1:2 axes x1y1 title 'Ist' ls l0 lw 1 with lines,\
plot "<IN>" using 1:2 axes x1y1 title 'Soll' ls l1fill lw 1 with lines,\
plot "<IN>" using 1:2 axes x1y1 notitle ls l0 lw 1 with points,\
plot "<IN>" using 1:2 axes x1y1 notitle  ls l2 lw 1 with lines,\


im beispiel oben werden alle temperature und desired werte alle MAX devices geplottet. wie das dann für ein paar oder ein paar mehr devices aussehen kann sieht man auf den beiden screenshots.

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

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