Hallo, ich plotte mit:
# Created by FHEM/98_SVG.pm, 2014-02-02 11:41:43
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> <L1>'
set ytics
set y2tics
set grid ytics y2tics
set ylabel "Verbrauch in kWh"
set y2label "Verbrauch in kWh"
#DbLog Sensor_Strom:day:10:10:
plot "<IN>" using 1:2 axes x1y2 title 'durchsch/Tag' ls l2fill lw 1 with lines
den Tagesverbrauch vom Strom, die Daten kommen über F2F von einem Raspi, welcher die Daten von einem ESA2000 empfängt. Ich hätte nun gerne, den im Plottitel angezeigten Wert:
attr Strom_Durchschnitt_Tag label "Verbrauch-bis jetzt: $data{currval1}"
gerundet ausgegeben ohne die eigendlichen Daten für den Plott zu verfälschen. Nur der angezeigte Wert {currval1} sollte gerundet werden. Habe schon mit:
$value = Math::Round::nearest('0.1','3.2456')
versucht das Ganze irgendwie zu realisieren aber leider weis ich nicht so recht wo ich ansetzen soll.
Den Wert schon auf dem Raspi runden und dann über F2F in DbLog schreiben (dann erscheint der gerundete Wert aber auch im Plott) oder den Wert auf der Hauptinstanz runden (ohne den Plott zu verfälschen). Gibt es da eine Möglichkeit?
Bräuchte da einen Tipp.
VG
Frank
attr Strom_Durchschnitt_Tag label sprintf("Verbrauch-bis jetzt: %0.1f", $data{currval1})
Danke Rudi, GENAU das habe ich gemeint und gesucht. Aber so "Perl fest" bin ich noch nicht ;)
VG
Frank
z.b. im plotfile:
set title '<L1>'
und im SVG etwas in der art:
attr Strom_Durchschnitt_Tag label "Verbrauch: ". sprintf("%.2f",$data{currval1}+0.5) ."kWh"
oder mit TL und title.
gruss
andre
edit: zu langsam :)
Hallo, mus leider nochmal nachfragen. Für eine Datenreihe funktioniert es aber bei zwei Datenreihen bekomme ich, trotz mehrfachen Versuchen, immer noch einen Syntaxfehler.
Das funktioniert:
"Leistung in kW Max: ".sprintf("%.1f",$data{max1})." bis jetzt $data{currval2}"
Aber hier stimmt der Syntax nicht:
"Leistung in kW Max: ".sprintf("%.1f",$data{max1})." bis jetzt" ."sprintf("%.2f" ,$data{currval2}+0.5) ." kWh"
Habt ihr da nochmal einen Tipp?
P.S. irgendwie sehe ich nicht wo . und dann wieder " hinngehört
VG
Frank
sprintf("Leistung in kW Max: %.1f bis jetzt %.2f kWh", $data{max1},$data{currval2}+0.5)