[gelöst] TabletUI Abbildung komplexer logProxy x,y-Koordinatenpaare

Begonnen von jnewton957, 19 März 2017, 20:00:22

Vorheriges Thema - Nächstes Thema

jnewton957

Hallo,

ich habe mich heute mal an etwas aus meiner Sicht komplexe logProxy Abbildung zu schaffen gemacht.

FTUI (noch) Version 1.x

Im Wiki ist ein Beispiel für eine Umsetzung "Daten aus x,y-Koordinatenpaaren plotten"
https://wiki.fhem.de/wiki/LogProxy#Daten_aus_x.2Cy-Koordinatenpaaren_plotten

Als SVG habe ich das umgesetzt für meine Temperatursensoren.
Nun wollte ich das ins TabletUi bringen und scheitere.
Vermutlich an der "logProxy_xy2Plot "

Das Umschalten vom Zeitpunkt/Wert Modus auf den X/Y Modus ist an das Vorhandensein der xrange-Anweisung im gplot File geknüpft. set xrange [12:28] set yrange [0:100]

Letzlich habe ich folgendes umgesetzt:
set xrange [15:28]
set yrange [15:90]
set y2range [15:90]

#logProxy Func:logProxy_xy2Plot([[19,39],[24.2,34],[22.2,67],[17.7,73],[19,39]])
#logProxy Func:logProxy_xy2Plot([[19.4,20],[25.5,17.5],[26.7,32],[24.5,60],[20.7,82],[17.2,86],[16,76],[17.2,38],[19.4,20]])
#logProxy Func:logProxy_xy2Plot([[ReadingsVal("CUL_TX_8","temperature",0),ReadingsVal("CUL_TX_8","humidity",0)]])
#logProxy Func:logProxy_xy2Plot([[ReadingsVal("CUL_TX_4","temperature",0),ReadingsVal("CUL_TX_4","humidity",0)]])
#logProxy Func:logProxy_xy2Plot([[ReadingsVal("CUL_TX_5","temperature",0),ReadingsVal("CUL_TX_5","humidity",0)]])
#logProxy Func:logProxy_xy2Plot([[ReadingsVal("CUL_TX_110","temperature",0),ReadingsVal("CUL_TX_110","humidity",0)]])
#logProxy Func:logProxy_xy2Plot([[ReadingsVal("CUL_TX_9","temperature",0),ReadingsVal("CUL_TX_9","humidity",0)]])
#logProxy Func:logProxy_xy2Plot([[ReadingsVal("netatmo_D70_ee_50_27_ad_02","temperature",0),ReadingsVal("netatmo_D70_ee_50_27_ad_02","humidity",0)]])

plot "<IN>" using 1:2 axes x1y1 title 'Behaglich' ls l1fill lw 0.2 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'Noch Behaglich' ls l5 lw 2 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'Bad' ls l0fill lw 4 with points,\
     "<IN>" using 1:2 axes x1y1 title 'Dachboden' ls l2fill lw 4 with points,\
     "<IN>" using 1:2 axes x1y1 title 'HWR Oben' ls l4fill lw 4 with points,\
     "<IN>" using 1:2 axes x1y1 title 'Herrenzimmer' ls l7 lw 4 with points,\
     "<IN>" using 1:2 axes x1y1 title 'Schlafzimmer' ls l0dot lw 4 with points,\
     "<IN>" using 1:2 axes x1y1 title 'Wohnzimmer' ls l1dot lw 4 with points


Im tabletUI habe ich bisher
<div class="small"
         data-type="chart"
data-logdevice='["logProxy","logProxy","logProxy","logProxy","logProxy","logProxy","logProxy","logProxy"]'
data-logfile="CURRENT"
data-columnspec='["Func:logProxy_xy2Plot([[19,39],[24.2,34],[22.2,67],[17.7,73],[19,39]])","Func:logProxy_xy2Plot([[19.4,20],[25.5,17.5],[26.7,32],[24.5,60],[20.7,82],[17.2,86],[16,76],[17.2,38],[19.4,20]])","Func:logProxy_xy2Plot([[ReadingsVal(\\x22CUL_TX_8\\x22,\\x22temperature\\x22,0),ReadingsVal(\\x22CUL_TX_8\\x22,\\x22humidity\\x22,0)]])","Func:logProxy_xy2Plot([[ReadingsVal(\\x22CUL_TX_4\\x22,\\x22temperature\\x22,0),ReadingsVal(\\x22CUL_TX_4\\x22,\\x22humidity\\x22,0)]])","Func:logProxy_xy2Plot([[ReadingsVal(\\x22CUL_TX_5\\x22,\\x22temperature\\x22,0),ReadingsVal(\\x22CUL_TX_5\\x22,\\x22humidity\\x22,0)]])","Func:logProxy_xy2Plot([[ReadingsVal(\\x22CUL_TX_110\\x22,\\x22temperature\\x22,0),ReadingsVal(\\x22CUL_TX_110\\x22,\\x22humidity\\x22,0)]])","Func:logProxy_xy2Plot([[ReadingsVal(\\x22CUL_TX_9\\x22,\\x22temperature\\x22,0),ReadingsVal(\\x22CUL_TX_9\\x22,\\x22humidity\\x22,0)]])","Func:logProxy_xy2Plot([[ReadingsVal(\\x22netatmo_D70_ee_50_27_ad_02\\x22,\\x22temperature\\x22,0),ReadingsVal(\\x22netatmo_D70_ee_50_27_ad_02\\x22,\\x22humidity\\x22,0)]])"]'
         data-style='["ftui l1fill","ftui l5","ftui l0fill","ftui l2fill","ftui l4fill","ftui l7","ftui l0dot","ftui l1dot"]'
         data-ptype='["lines","lines","points","points","points","points","points","points"]'
         data-uaxis='["primary","primary","primary","primary","primary","primary","primary","primary"]'
         data-legend='["Behaglich","Noch Behaglich","Bad","Dachboden","HWR Oben","Herrenzimmer","Schlafzimmer","Wohnzimmer"]'
         data-yunit=""
         data-ytext=""
         data-showlegend="true"
data-height="250"
data-xticks="auto">
    </div>


Jetzt muss ich die Datenpunkte nur noch DEUTLICH größer bekommen. Ds sind die winzigen Punkte ind er 1. Abbildung ziemlich in der Mitte.
Die sind aktuell so mini, dass man sie fast nicht sieht. Wie mache ich das und setze das Width=4 (lw 4) aus dem gplot hier in obiger Umsetzung um??


Grüße
Jörg
FHEM6.2 auf Pi5
V 1.66 nanoCUL 433 (IT)
V 1.66 nanoCUL868 (HM)
sqlite3 LogDb
ELRO AB440, DECT200,  TFA30.3125, esp8266, HM, TabletUI, IR-Schreiblesekopf (Udo),tibber Pulse, Kostal Pico, cfos Wallbox, Modbus TCP

eki

#1
für größere Datenpunkte gibt es verschiedene Möglichkeiten:

1. Statt l0dot l0sym verwenden (in der Standardeinstellung werden aus 2 pixeln großen Symbolen dann 12 pixel.
2. Im fhem-tablet-ui-user.css File eigene Styles eintragen und diese verwenden.

Also z.B.
/* Definition for styles to be used for graphs (as alternative to the standard FHEM plot styles */
/* normal lines */
.ftui.l99 { stroke:#DDA400; stroke-width:24px; fill:none; }

Der Eintrag hinter "stroke:" gibt die Farbe ( # und dahinter 3 Hex Werte für RGB, oder ein Farbname wie "red") an, stroke width die Größe in pixeln. Dieser Stil kann dann als "ftui l99" verwendet werden.