FHEM Forum

FHEM => Frontends => SVG / Plots / logProxy => Thema gestartet von: locodriver am 17 Dezember 2021, 16:14:28

Titel: [gelöst] Verbräuche des laufenden und des Vorjahres darstellen
Beitrag von: locodriver am 17 Dezember 2021, 16:14:28
Hallo,

ich knobele schon länger an dem Problem und bekomme es nicht gelöst.

Was möchte ich?
In einem Plot von Januar bis Dezember sollen die monatlichen Verbräuche des laufenden und des Vorjahres dargestellt werden. Zur besseren Unterscheidung habe ich momentan unterschiedliche Stile und Farben gewählt - am Ende sollen zwei Balkendiagramme übereinander liegen.
Die Logdatei lege ich händisch an, da ich (noch) keine Erfassung des Wärmezählers habe.
Ich habe mich schon an logproxy und verschiedenen Möglichkeiten, die x-Achse zu verschieben versucht und mich an Beispielen hier und im Wiki orientiert (etwa in der Art:

#FileLog Gesamt_ETW 3:GesamtHeizenergie::
#lp FileLog:Gesamt_ETW,offset=-365*(60*60*24):3:GesamtHeizenergie::
)

- aber es klappt nicht... :(

Momentan sieht die Grafik wie im Anhang aus.

Das Logfile hat folgende Struktur:

2021-12-01_10:00:00 GesamtHeizenergie: 525.0
2021-11-01_10:00:00 GesamtHeizenergie: 163.0
2021-10-01_10:00:00 GesamtHeizenergie: 0.0
2021-09-01_10:00:00 GesamtHeizenergie: 0.0
2021-08-01_10:00:00 GesamtHeizenergie: 0.0
2021-07-01_10:00:00 GesamtHeizenergie: 0.0
2021-06-01_10:00:00 GesamtHeizenergie: 0.0
2021-05-01_10:00:00 GesamtHeizenergie: 67.0
2021-04-01_10:00:00 GesamtHeizenergie: 333.0
2021-03-01_10:00:00 GesamtHeizenergie: 513.0
2021-02-01_10:00:00 GesamtHeizenergie: 752.0
2021-01-01_10:00:00 GesamtHeizenergie: 832.0
2020-12-01_10:00:00 GesamtHeizenergie: 662.0
2020-11-01_10:00:00 GesamtHeizenergie: 441.0
2020-10-01_10:00:00 GesamtHeizenergie: 162.0
2020-09-01_10:00:00 GesamtHeizenergie: 5.0
2020-08-01_10:00:00 GesamtHeizenergie: 1.0
2020-07-01_10:00:00 GesamtHeizenergie: 0.0
2020-06-01_10:00:00 GesamtHeizenergie: 0.0
2020-05-01_10:00:00 GesamtHeizenergie: 26.9
2020-04-01_10:00:00 GesamtHeizenergie: 128.9
2020-03-01_10:00:00 GesamtHeizenergie: 506.2
2020-02-01_10:00:00 GesamtHeizenergie: 573.5
2020-01-01_10:00:00 GesamtHeizenergie: 370.4
2019-12-01_10:00:00 GesamtHeizenergie: 671.1


Das sind die Werte, die in diesem Jahr dargestellt werden müssten.

Die aktuelle SVG-DEF. sieht so aus:



SVG_0.gplot

# Created by FHEM/98_SVG.pm, 2021-12-17 11:24:15
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title 'Heizung akt. und Vorjahr'
set ytics
set y2tics
set grid y2tics
set ylabel "Energie (kWh)"
set y2label "Energie (kWh)"
set yrange [0:1200]
set y2range [0:1200]

#Gesamt_ETW 3:GesamtHeizenergie\x3a.*::
#Gesamt_ETW 3:GesamtHeizenergie\x3a.*::

plot "<IN>" using 1:2 axes x1y2 title 'Gesamt Heizenergie' ls l0fill lw 1 with bars,\
     "<IN>" using 1:2 axes x1y2 title 'Vorjahr' ls l1fill lw 1 with lines



Der Preprocessed Input:

get Gesamt_ETW CURRENT INT 2021-01-01_00:00:00 2021-12-31_23:59:59 3:GesamtHeizenergie:: 3:GesamtHeizenergie::

2021-01-01_10:00:00 832.0
2021-02-01_10:00:00 752.0
2021-03-01_10:00:00 513.0
2021-04-01_10:00:00 333.0
2021-05-01_10:00:00 67.0
2021-06-01_10:00:00 0.0
2021-07-01_10:00:00 0.0
2021-08-01_10:00:00 0.0
2021-09-01_10:00:00 0.0
2021-10-01_10:00:00 0.0
2021-11-01_10:00:00 163.0
2021-12-01_10:00:00 525.0
#3:GesamtHeizenergie::
2021-01-01_10:00:00 832.0
2021-02-01_10:00:00 752.0
2021-03-01_10:00:00 513.0
2021-04-01_10:00:00 333.0
2021-05-01_10:00:00 67.0
2021-06-01_10:00:00 0.0
2021-07-01_10:00:00 0.0
2021-08-01_10:00:00 0.0
2021-09-01_10:00:00 0.0
2021-10-01_10:00:00 0.0
2021-11-01_10:00:00 163.0
2021-12-01_10:00:00 525.0
#3:GesamtHeizenergie::


Ist momentan zwei mal das gleiche, da ich die Definitionen erstmal auf die einfachsten Ausdrücke zurück geführt habe.

Wenn noch Infos fehlen, dann bitte fragen.
Titel: Antw:Verbräuche des laufenden und des Vorjahres darstellen
Beitrag von: eki am 17 Dezember 2021, 16:48:03
Du musst die Daten aus dem Vorjahr ja zeitlich verschieben (um ein Jahr), weil es im SVG Plot soweit mir bekannt keine Möglichkeit gibt, 2 X-Achsen zu haben (was Du ja eigentlich bräuchtest).

Dazu kannst Du logproxy verwenden dort gibt es direkt die Möglichkeit einen Zeitoffset auf die Daten vor dem Plotten zu geben. In deinem Falls müsste das aus dem Gedächtnis, ohne es ausprobiert zu haben folgendermaßen aussehen (nicht vergessen das Logproxy Device in FEHM zu definieren):

#logProxy FileLog:Gesamt_ETW,offset=m12:3:GesamtHeizenergie\x3a.*::

Das ist aber auch alles im Logproxy Wiki erklärt (https://wiki.fhem.de/wiki/LogProxy (https://wiki.fhem.de/wiki/LogProxy))
Titel: Antw:Verbräuche des laufenden und des Vorjahres darstellen
Beitrag von: locodriver am 17 Dezember 2021, 17:29:58
Hmm...

Irgendwie funzt das so auch nicht.

Mein logproxy Device heißt "lp", das habe ich ersetzt und deine Zeile als zweite Zeile im SVG-0.gplot File eingesetzt.

In der Richtung deines Tipps war ich auch schon unterwegs.

Jetzt habe ich nochmal etwas probiert - und habe eine Lösung:

#lp FileLog:Gesamt_ETW,offset=365*(60*60*24):3:GesamtHeizenergie\x3a.*::


Warum es mit "m12" nicht funzt, kann ich nicht nachvollziehen.

Danke für die Inspiration.
Titel: Antw:[gelöst] Verbräuche des laufenden und des Vorjahres darstellen
Beitrag von: justme1968 am 17 Dezember 2021, 20:21:55
vermutlich weil es 12m heißen muss :)
Titel: Antw:[gelöst] Verbräuche des laufenden und des Vorjahres darstellen
Beitrag von: locodriver am 20 Dezember 2021, 18:01:14
Zitat von: justme1968 am 17 Dezember 2021, 20:21:55
vermutlich weil es 12m heißen muss :)

OMG...