Gelöst - Berechnungen im Attribut "label" bei SVG-Grafiken

Begonnen von Gundermann, 10 Dezember 2022, 08:31:11

Vorheriges Thema - Nächstes Thema

Gundermann

Mit dem Attribut "label" kann man allerlei Informationen in der Überschrift zu SVG-Grafiken darstellen. Ich suche nach einer einfachen Möglichkeit, im nachfolgenden Beispiel die Differenz zwischen Anfangswert und Endwert zu berechnen, also max2 minus min2. Geht das irgendwie?

"Stromkosten im Anzeigezeitraum: Anfangswert $data{min2} €, Endwert $data{max2} €, Differenz $data{???} €"
FHEM auf RPi 4B | CUL 868 MHz | SIGNALduino 433 MHz | FRITZ!Dect | FS20 | Homematic | Intertechno | Sonoff | Shelly | IP-Kameras | Wettersensoren | ZigBee | ...
FHEM ist nicht Plug & Play. Man muss bereit sein hinter die Kulissen zu schauen.

Nobbynews

Beispiel:
attr SVG_Tagesverbrauch_Gas_1 plotReplace TL={"Tagesverbrauch Gas ".sprintf("%.2f",$data{currval1})." m³, Anzeigedurchschnitt ".sprintf("%.2f",$data{avg1})." m³/d, gesamt ".sprintf("%.3f",$data{currval3})." m³/d, Prognose: ".sprintf("%.0f",$data{avg1}*365)." m³/a, ".sprintf("%.0f",$data{avg1}*365*0.9655*10.369)." kWh/a"}

Im Ploteditor dann unter Plot title eintragen "<TL>"

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Gundermann

Danke für die schnellen Antworten.

Das veraltete Attribut "label" habe ich jetzt gelöscht und durch "plotReplace" ersetzt. In Anlehnung an die Antwort von "Nobbynews" sieht mein String nun so aus:

TL={"Stromkosten im Anzeigezeitraum: Anfangswert ".sprintf("%.2f",$data{min2})." €, Endwert ".sprintf("%.2f",$data{max2})." €, Differenz ".sprintf("%.2f",$data{hier_sollte_die_Differenz_berechnet_werden})." €"}

Leider habe ich noch immer keine Idee, wie hier die Differenz aus Anfangswert und Endwert zu berechnen ist.
FHEM auf RPi 4B | CUL 868 MHz | SIGNALduino 433 MHz | FRITZ!Dect | FS20 | Homematic | Intertechno | Sonoff | Shelly | IP-Kameras | Wettersensoren | ZigBee | ...
FHEM ist nicht Plug & Play. Man muss bereit sein hinter die Kulissen zu schauen.

Nobbynews

TL={"Stromkosten im Anzeigezeitraum: Anfangswert ".sprintf("%.2f",$data{min2})." €, Endwert ".sprintf("%.2f",$data{max2})." €, Differenz ".sprintf("%.2f",$data{max2}-$data{min2})." €"}

Gundermann

Danke Nobbynews. Das ist die Lösung! Ich sollte mich etwas mehr mit Perl beschäftigen.
FHEM auf RPi 4B | CUL 868 MHz | SIGNALduino 433 MHz | FRITZ!Dect | FS20 | Homematic | Intertechno | Sonoff | Shelly | IP-Kameras | Wettersensoren | ZigBee | ...
FHEM ist nicht Plug & Play. Man muss bereit sein hinter die Kulissen zu schauen.

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!