Plot mit bestimmten Farbbereichen ??

Begonnen von ChrisW, 10 November 2013, 18:44:46

Vorheriges Thema - Nächstes Thema

ChrisW

Hallo,

lässt sich ein Plot bauen der in einem Festgelegten Bereich Grün ist und darüber / darunter Rot ?

Z.b Stromverbrauch zwischen 0-100Watt Grün darüber Rot.

Irgendwo habe ich so etwas mal gesehen.
Raspberry PI3 mit allem möglichen.

justme1968

das geht nur mit trixen. schau dir mal den plot für den luftqualitäts sensor aus de thread dort an.

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

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

ChrisW

Okay Danke das habe ich mir schon fast gedacht :( Werd ich mir mal anschauen wenn ich meine anderen Probleme gelöst hab ;)
Raspberry PI3 mit allem möglichen.

rudolfkoenig

@justme1968: kannst Du mir helfen diesen Thread zu finden? Weder Google, noch die Forumssuche schaffen es, oder ich bin Blind.

@ChrisW: ich bin auch der Ansicht, dass das nur mit tricks geht: ich wuerde eine feste Wert-Skala definieren, und per SVG/CSS die Bereiche faerben. Bin aber nicht sicher, ob es ueberhaupt funktioniert.

justme1968

der thread ist der hier http://forum.fhem.de/index.php/topic,13166.msg102323.html#msg102323. ich sehe aber gerade das ich das plot file noch nicht gepostet hatte.

da habe ich es so gemacht das die kurve drei mal geplottet wird jeweils unterschiedlich eingefärbt und über einen $fld[2] ausdruck unterschiedlich oben beschnitten.

wenn man jeweils unten auch noch passend beschneidet könnte man vermutlich das übereinander malen auch noch verhindern und hat weniger einschränung bei den farbkombinationen.

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

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

rudolfkoenig

Diese Definition wuerde ich auch gerne sehen :)

Meine Idee mit CSS Tricks funktioniert erstmal nicht, da ich nicht weiss wie man eine Farbe bis zu einem bestimmten (absoluten) Pixel angibt. Beschrieben sind ueberall nur prozentuale Werte, und dafuer muesste die Kurve immer den ganzen Bereich abdecken.
Siehe auch fhem/www/pgm2/svg_defs.svg

justme1968

eigentlich ist es ganz einfach. es ist nicht sehr effizient und durch das übereinander zeichenen sind nicht alle farbkombinationen möglich (das müsste mit begrenzen an der unterkante besser gehen). ich kann gerade kein file dran hängen deswegen eine version direkt als code. wenn SVG das direkt vielleicht mit einem fillcolor atribut und farbe/bereich zuordnung könnte wäre es natürlich eleganter.

gruss
  andre

# Created by FHEM/98_SVG.pm, 2013-10-24 18:46:23
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 '<L1>'
set ytics
set y2tics
set grid ytics
set ylabel "Luftqualität"
set y2label ""

#FileLog 3:airquality.livingroom.*::$fld[2]>1000?1000:$fld[2]
#FileLog 3:airquality.livingroom.*::$fld[2]>1500?1500:$fld[2]
#FileLog 3:airquality.livingroom.*::
#FileLog 3:airquality.livingroom.*::
#FileLog 3:airquality.livingroom.*::

plot "<IN>" using 1:2 axes x1y2 title '.' ls l1fill lw 0.2 with lines,\
     "<IN>" using 1:2 axes x1y2 title '.' ls l4fill lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title '.' ls l0fill lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title '.' ls l4fill lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Luftqualität' ls l7 lw 1 with lines
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

rudolfkoenig

Ich knabbere immer noch an diesem Problem, habe dabei 5 neue SVG-styles (nur fuer default stylesheetPrefix) hinzugefuegt (2x gepunktet, 2x mit Schraffur, 1x ganz bunt), und die Anzeige der moeglichen Eintraege in dem .gplot-Editor dynamisch gemacht.

Achtung: der Name im style_svg.css muss mit .l anfangen, damit es im Plot-Editor auftaucht, und falls es gefuellt sein soll, muss fill enthalten.