Plot dynamische Obergrenze ...

Begonnen von fhem:user, 21 August 2015, 20:19:52

Vorheriges Thema - Nächstes Thema

fhem:user

Hallo,

mit meinem Fibaro Wall-Plug (Z-Wave Steckdose) kann ich mir u.a. den Energieverbrauch anzeigen lassen. Ich habe mir dafür ein Plot erstellt:


# Created by FHEM/98_SVG.pm, 2015-04-29 18:57:37
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 'Energieverbrauch'
set ytics
set y2tics
set grid ytics
set ylabel "Verbrauch (kWh)"
set y2label ""
set yrange [<L1>:<L2>]
set y2range [<L1>:<L2>]

#MySQLDB Steckdose_Waschmaschine:energy

plot "<IN>" using 1:2 axes x1y2 title 'Waschmaschine' ls l0 lw 1 with lines


Nun möchte ich erreichen, da der Verbrauch ja stetig steigen wird, dass die Y-Achse dynamisch abhängig vom aktuell höchsten Wert mitwächst. Am besten, damit auch ein bisschen Abstand zum oberen Rand ist mit einem kleinen Puffer. Ich hatte diesen http://forum.fhem.de/index.php?topic=25618.0 Thread gefunden und habe versucht das danach folgendermaßen aufzubauen:

Zitatattr PLOT_Energie_Waschkeller label "0"::"$data{max1}+1"

Leider liefert das nicht das gewünschte Ergebnis. Hat jemand vielleicht eine Idee?

Viele Grüße

justme1968

du kannst inzwischen direkt im gplot file Orange ohne umgeh über die label so angeben:yrange {"[0:".$data{max1}+1."]"}

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

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

fhem:user

Hm, irgendwie klappt das nicht so ganz. Hab das im gplot-File nun so übernommen, allerdings geht die Y-Achse nun von 2.29 bis 2.59, statt von 0 (als Untergrenze) bis 3.59 (oberer Wert +1).

frank

ich könnte mir vorstellen, dass da noch eine klammer hin muss.

yrange {"[0:".($data{max1}+1)."]"}

ansonsten schau mal in fhem.log nach fehlermeldungen, wenn der plot ausgeführt wird. eventuell verbose vom svg etwas hochdrehen.
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

fhem:user

Also das Ergebnis sieht nun so aus, dass die Y-Achse von 0 bis 1 geht und 0,2er-Schritten unterteilt ist. Da mein Wert über 2 liegt wird er daher gar nicht angezeigt. Im FHEM-Log steht dazu nur:

Zitat
PERL WARNING: Argument " 2.57 kWh" isn't numeric in sprintf at ./FHEM/98_SVG.pm line 1993.

Vor der Änderung stand noch ...
Zitat
PERL WARNING: String found where operator expected at (eval 114) line 1, near "1."]""
eval: {"[0:".$data{max1}+1."]"}
PERL WARNING:    (Missing operator before "]"?)
PERL WARNING: String found where operator expected at (eval 115) line 1, near "1."]""
eval: {"[0:".$data{max1}+1."]"}
PERL WARNING: Argument " 2.57 kWh" isn't numeric in sprintf at ./FHEM/98_SVG.pm line 1993.