[gelöst]plotReplace nicht verstanden

Begonnen von kleineslichtHH, 01 März 2018, 18:06:30

Vorheriges Thema - Nächstes Thema

kleineslichtHH

Hallo ihr Lieben,


anscheinend habe ich das Attribut plotReplace nicht verstanden.


GPLOT:


# Created by FHEM/98_SVG.pm, 2018-02-12 11:34:46
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 '<TL>'
set ytics
set y2tics
set grid y2tics
set ylabel "Ventil %"
set y2label "Temperatur °C"
set yrange [0:100]
set y2range [-10:30]


#myDbLog <WT>:temperature
#myDbLog <WT>:desiredTemperature
#myDbLog <Ventil1>:valveposition
#myDbLog <Ventil2>:valveposition
#myDbLog PROPLANTA:temperature
#myDbLog <WT>:humidity


plot "<IN>" using 1:2 axes x1y2 title 'Temperatur' ls l0 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Soll' ls l1fill lw 1 with histeps,\
     "<IN>" using 1:2 axes x1y1 title 'Ventil1' ls l6fill lw 1 with histeps,\
     "<IN>" using 1:2 axes x1y1 title 'Ventil2' ls l0 lw 1 with histeps,\
     "<IN>" using 1:2 axes x1y2 title 'Aussentemperatur' ls l0fill lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'Feuchte' ls l2 lw 1 with lines



SVG:


defmod SVG_Heizung_Wohnzimmer SVG myDbLog:SVG_Heizung_2Ventile:HISTORY
attr SVG_Heizung_Wohnzimmer captionPos auto
attr SVG_Heizung_Wohnzimmer plotReplace WT="WT.Wohnzimmer" Ventil1="HK.Wohnzimmer" Ventil2="HK.Couch"
attr SVG_Heizung_Wohnzimmer room Unsorted



Mein Plot zeigt mir allerdings keine Kurve an. Mit fest vergeben Namem im GPLOT bekomme ich meine Kurve dargestellt.


Ich habe auch folgendes ohne Erfolg versucht:

attr SVG_Heizung_Wohnzimmer plotReplace WT={"WT.Wohnzimmer"} Ventil1={"HK.Wohnzimmer"} Ventil2={"HK.Couch"}


Wo liegt mein Denkfehler?

rudolfkoenig

Aus der commandref:
ZitatIn der .gplot Datei werden <Name> Zeichenketten durch den zugehoerigen Wert ersetzt, die Auswertung von {} Ausdrücken erfolgt nach dem die Daten ausgewertet wurden, d.h. man kann hier $data{min1},etc verwenden.
Bei %Name% erfolgt die Ersetzung vor der Datenauswertung, das kann man verwenden, um Parameter für die Auswertung zu ersetzen.

Wichtig sind hier die Kursiv geschriebenen Woerter. Die Zeile mit #myDbLog muss vor der Datenauswertung erstellt werden, sonst weiss das Modul nicht, welche Daten es holes soll. Hier ist also %WT% notwendig, <WT> ist falsch.


kleineslichtHH

Vielen Dank, es funktioniert.


GPLOT:


# Created by FHEM/98_SVG.pm, 2018-02-12 11:34:46
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 '"<WT>: <TL>"'
set ytics
set y2tics
set grid y2tics
set ylabel "Ventil %"
set y2label "Temperatur °C"
set yrange [0:100]
set y2range [-15:30]


#myDbLog %WT%:temperature
#myDbLog %WT%:desiredTemperature
#myDbLog %Ventil1%:valveposition
#myDbLog %Ventil2%:valveposition
#myDbLog %Wetter%:temperature




plot "<IN>" using 1:2 axes x1y2 title 'Temperatur' ls l0 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Soll' ls l1fill lw 1 with histeps,\
     "<IN>" using 1:2 axes x1y1 title 'Ventil1' ls l6fill lw 1 with histeps,\
     "<IN>" using 1:2 axes x1y1 title 'Ventil2' ls l0 lw 1 with histeps,\
     "<IN>" using 1:2 axes x1y2 title 'Aussentemperatur' ls l2 lw 1 with lines



SVG:


defmod SVG_Heizung_Wohnzimmer SVG myDbLog:SVG_Heizung_2Ventile:HISTORY
attr SVG_Heizung_Wohnzimmer captionPos auto
attr SVG_Heizung_Wohnzimmer group Heizung Erdgeschoss
attr SVG_Heizung_Wohnzimmer plotReplace WT="WT.Wohnzimmer" Ventil1="HK.Wohnzimmer" Ventil2="HK.Couch" Wetter="PROPLANTA" TL={"Min $data{min1} °C, Max $data{max1} °C, Aktuell $data{currval1} °C"}
attr SVG_Heizung_Wohnzimmer room Unsorted