[gelöst] Stundengenaue Wettervorhersage mit Proplanta / TabletUI Umsetzung

Begonnen von jnewton957, 24 März 2016, 06:40:59

Vorheriges Thema - Nächstes Thema

jnewton957

Hallo,

hat schon jemand mal die Grafiken/Charts von Frank für die Stundengenaue Wettervorhersage mit Proplanta aus https://forum.fhem.de/index.php/topic,22967.msg334713.html#msg334713
umgesetzt ?
Da ist viel logproxy drin.

Das geht bei mir bisher weder über das chart widget noch über die Einbindung der svg Grafik. Bei Einbindung SVG Grafik kommen nur die Werte, die auch im filelog stehen und nicht berechnete Werte bzw. Werte mittels LogProxy.

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

Ich weis nicht ob das für Dich noch relevant ist, habe die Frage leider gerade erst entdeckt. Das geht schon, allerdings musst du die inneren '"' als \\x22 darstellen (mir ist noch keine Idee gekommen, wie ich die verschachtelten '"' ansonsten auseinander halten kann. Deine columnspec sollte also in etwa so:
data-columnspec='["Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22rad\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22rad\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22sun\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22evapor\\x22,$from,$to,0,\\x22day\\x22)","ConstY:110"]'

aussehen, dann sollte es klappen.

jnewton957

Hallo,

habe es nochmals einige Sunden versucht.

Leider erfolglos.

Meine Definition:
define Wettervorhersage_Proplanta PROPLANTA xxxxx de

funktionierendes gplot (Auszug):
#logProxy Func:logProxy_proplanta2Plot("Wettervorhersage_Proplanta","rad",$from,$to,12)
#logProxy Func:logProxy_proplanta2Plot("Wettervorhersage_Proplanta","rad",$from,$to,12)
#logProxy Func:logProxy_proplanta2Plot("Wettervorhersage_Proplanta","sun",$from,$to,12)
#logProxy Func:logProxy_proplanta2Plot("Wettervorhersage_Proplanta","evapor",$from,$to,0,"day")
#logProxy ConstY:110

plot "<IN>" using 1:2 axes x1y1 notitle ls l3 lw 2 with points,\
     "<IN>" using 1:2 axes x1y1 title 'fc_rad' ls l5 lw 2 with quadraticSmooth,\
     "<IN>" using 1:2 axes x1y2 title 'fc_sun' ls l4fill lw 1 with bars,\
     "<IN>" using 1:2 axes x1y1 title 'fc_vapor' ls l2fill lw 1 with steps,\
     "<IN>" using 1:2 axes x1y2 notitle ls l6fill lw 1 with lines


Mein tabletUI (Auszug):
<li class="halbTransparent" data-row="3" data-col="2" data-sizex="7" data-sizey="1">
<header class="headerTransparent">7 Tage Sonne_Strahlung</header>
<div class="normal"
         data-type="chart"
data-device="Wettervorhersage_Proplanta"
         data-logfile="CURRENT"
data-logdevice='["logProxy","logProxy","logProxy","logProxy","logProxy"]'
         data-columnspec='["Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22rad\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22rad\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22sun\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22evapor\\x22,$from,$to,0,\\x22day\\x22)","ConstY:110"]'
         data-style='["ftui l3","ftui l5","ftui l4fill","ftui l2fill","ftui l6fill"]'
         data-ptype='["points","quadraticSmooth","bars","steps","lines"]'
         data-uaxis='["secondary","secondary","primary","secondary","primary"]'
         data-legend='["","fc_rad","fc_sun","fc_vapor",""]'
         data-yunit=""
         data-ytext="vapor / radiation"
         data-minvalue="auto"
         data-maxvalue="auto"
         data-yunit_sec="%"
         data-ytext_sec="sun (rel) %"
         data-yticks="auto"
         data-minvalue_sec="auto"
         data-maxvalue_sec="auto"
         data-daysago_start="0"
         data-daysago_end="7"
         data-crosshair="true"
         data-cursorgroup="1"
         data-scrollgroup="1"
         data-showlegend="true"
data-height="auto"
data-xticks="auto">
    </div>
</li>


Ergebnis: ==> Chart bleibt "leer"/schwarz

Herausforderungen:
- FHEM Chart hat fixedoffset 6
- FHEM Chart hat fixedrange 7days
- FHEM Chart hat quadraticSmooth (gibt es eigentlich nicht im chart widget ?). könnte man sicherlich anderen charttyp nehmen.

Ich vermute, dass es mit data-device="Wettervorhersage_Proplanta" und/oder data-logdevice='["logProxy","logProxy","logProxy","logProxy","logProxy"]' zusammenhängt, dass die charts leer bleiben.

Jemand eine Idee ??

Danke
Jög

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

Der Parameter daysago_start bzw. daysago_end gibt an wie viele Tage der Start bzw. Endwert des Plots vom aktuellen Tag aus gesehen zurück liegt. Es sollte also immer der daysago_end Wert kleiner sein als der daysago_start Wert (sonst ist der Start später als das Ende). In Deinem Beispiel ist das leider nicht so (daysago_end ist 7 und daysago_start ist 0).
Wenn Dein Plot die Vorhersage vom aktuellen Tag genau eine Woche in die Zukunft beinhalten soll, musst Du die beiden Parameter folgendermaßen setzen:

data-daysago_start = "0"
data-daysago_end = "-7"

jnewton957

#4
ES IST VOLLBRACHT:

Danke EKI für die Hilfe und die Tips.

Wenn es jemand nachbauen möchte:
Wettertrend_Proplanta2:
<li class="halbTransparent" data-row="2" data-col="2" data-sizex="7" data-sizey="2">
<header class="headerTransparent">14 Tage Temp min_max</header>
<div class="normal"
         data-type="chart"
data-logdevice='["logProxy","FileLog_Wettervorhersage_Proplanta","logProxy","logProxy","logProxy"]'
data-columnspec='["ConstY:0","4:temperature","ConstY:0","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22tempMin\\x22,$from,$to,6,\\x22day\\x22)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22tempMax\\x22,$from,$to,15,\\x22day\\x22)"]'
         data-style='["ftui l3","ftui l5","ftui l3","ftui l2","ftui l0"]'
         data-ptype='["lines","lines","lines","lines","lines"]'
         data-uaxis='["primary","primary","primary","primary","primary"]'
data-legend='["","temp","","fc_Tmin","fc_Tmax"]'
         data-yunit="°C"
         data-ytext="temperatur °C"
         data-minvalue="auto"
         data-maxvalue="auto"
         data-yunit_sec="C"
         data-ytext_sec="temperatur °C"
         data-yticks="auto"
         data-minvalue_sec="auto"
         data-maxvalue_sec="auto"
data-daysago_start = "0"
data-daysago_end = "-14"
         data-crosshair="true"
         data-cursorgroup="1"
         data-scrollgroup="1"
         data-showlegend="true"
data-height="250"
data-xticks="auto">
</div>
</li>
<li class="halbTransparent" data-row="4" data-col="2" data-sizex="7" data-sizey="2">
<header class="headerTransparent">7 Tage Sonne_Strahlung</header>
<div class="small"
         data-type="chart"
data-logdevice='["logProxy","logProxy","logProxy","logProxy","logProxy"]'
data-logfile="CURRENT"
data-columnspec='["Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22rad\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22rad\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22sun\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22evapor\\x22,$from,$to,0,\\x22day\\x22)","ConstY:110"]'
         data-style='["ftui l3","ftui l5","ftui l0fill","ftui l2fill","ftui l6fill"]'
         data-ptype='["points","quadraticSmooth","bars","steps","lines"]'
         data-uaxis='["primary","primary","secondary","primary","secondary"]'
         data-legend='["","fc_rad","fc_sun","fc_vapor",""]'
         data-yunit=""
         data-ytext="vapor / radiation"
         data-minvalue="0"
         data-maxvalue="10"
         data-yunit_sec="%"
         data-ytext_sec="sun (rel) %"
         data-yticks="auto"
         data-minvalue_sec="0"
         data-maxvalue_sec="110"
data-nofulldays="true"
         data-daysago_start = "0"
data-daysago_end = "-7"
data-crosshair="true"
         data-cursorgroup="1"
         data-scrollgroup="1"
         data-showlegend="true"
data-height="250"
data-xticks="auto">
    </div>
</li>


Wettertrend_Proplanta2:
<li class="halbTransparent" data-row="2" data-col="2" data-sizex="7" data-sizey="2">
<header class="headerTransparent">7 Tage Wettervorhersage Wolken / Regen</header>
<div class="normal"
         data-type="chart"
data-logdevice='["logProxy","logProxy","logProxy"]'
data-logfile="CURRENT"
         data-columnspec='["Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22rain_\\x22,$from,$to,0,\\x22day\\x22)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22cloud_\\x22,$from,$to,0,\\x22day\\x22)","ConstY:0"]'
         data-style='["ftui l6fill","ftui l5fill","ftui l4fill"]'
         data-ptype='["steps","quadraticSmooth","quadraticSmooth"]'
         data-uaxis='["primary","secondary","secondary"]'
         data-legend='["fc_rain","fc_chOfRain","fc_cloud"]'
         data-yunit="mm"
         data-ytext="rain mm"
         data-minvalue="auto"
         data-maxvalue="auto"
         data-yunit_sec="%"
         data-ytext_sec="cloud / chOfRain %"
         data-yticks="auto"
         data-minvalue_sec="0"
         data-maxvalue_sec="110"
data-nofulldays="true"
         data-daysago_start = "0"
data-daysago_end = "-7"
         data-crosshair="true"
         data-cursorgroup="1"
         data-scrollgroup="1"
         data-showlegend="true"
data-height="250"
data-xticks="auto">
    </div>
</li>
<li class="halbTransparent" data-row="4" data-col="2" data-sizex="7" data-sizey="2">
<header class="headerTransparent">Tages Wettervorhersage Wolken / Regen</header>
<div class="normal"
         data-type="chart"
data-logdevice='["logProxy","logProxy","logProxy","logProxy"]'
data-logfile="CURRENT"
         data-columnspec='["Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22rain_\\x22,$from,$to,0,\\x22day\\x22)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22chOfRain_\\x22,$from,$to,0,\\x22day\\x22)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22cloud_\\x22,$from,$to,0,\\x22day\\x22)","ConstY:0"]'
         data-style='["ftui l4fill","ftui l5fill","ftui l6fill","ftui l2fill"]'
         data-ptype='["steps","quadraticSmooth","quadratic","lines"]'
         data-uaxis='["primary","secondary","secondary","secondary"]'
         data-legend='["fc_rain","fc_chOfRain","fc_cloud",""]'
         data-yunit="mm"
         data-ytext="rain mm"
         data-minvalue="auto"
         data-maxvalue="auto"
         data-yunit_sec="%"
         data-ytext_sec="cloud / chOfRain %"
         data-yticks="auto"
         data-minvalue_sec="0"
         data-maxvalue_sec="110"
data-nofulldays="true"
         data-daysago_start = "0"
data-daysago_end = "-1"
         data-crosshair="true"
         data-cursorgroup="1"
         data-scrollgroup="1"
         data-showlegend="true"
data-height="250"
data-xticks="auto">
    </div>
</li>




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

Esjay

Zitat von: jnewton957 am 07 August 2016, 15:24:41
ES IST VOLLBRACHT:

Danke EKI für die Hilfe und die Tips.

Wenn es jemand nachbauen möchte:
Wettertrend_Proplanta2:
<li class="halbTransparent" data-row="2" data-col="2" data-sizex="7" data-sizey="2">
<header class="headerTransparent">14 Tage Temp min_max</header>
<div class="normal"
         data-type="chart"
data-logdevice='["logProxy","FileLog_Wettervorhersage_Proplanta","logProxy","logProxy","logProxy"]'
data-columnspec='["ConstY:0","4:temperature","ConstY:0","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22tempMin\\x22,$from,$to,6,\\x22day\\x22)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22tempMax\\x22,$from,$to,15,\\x22day\\x22)"]'
         data-style='["ftui l3","ftui l5","ftui l3","ftui l2","ftui l0"]'
         data-ptype='["lines","lines","lines","lines","lines"]'
         data-uaxis='["primary","primary","primary","primary","primary"]'
data-legend='["","temp","","fc_Tmin","fc_Tmax"]'
         data-yunit="°C"
         data-ytext="temperatur °C"
         data-minvalue="auto"
         data-maxvalue="auto"
         data-yunit_sec="C"
         data-ytext_sec="temperatur °C"
         data-yticks="auto"
         data-minvalue_sec="auto"
         data-maxvalue_sec="auto"
data-daysago_start = "0"
data-daysago_end = "-14"
         data-crosshair="true"
         data-cursorgroup="1"
         data-scrollgroup="1"
         data-showlegend="true"
data-height="250"
data-xticks="auto">
</div>
</li>
<li class="halbTransparent" data-row="4" data-col="2" data-sizex="7" data-sizey="2">
<header class="headerTransparent">7 Tage Sonne_Strahlung</header>
<div class="small"
         data-type="chart"
data-logdevice='["logProxy","logProxy","logProxy","logProxy","logProxy"]'
data-logfile="CURRENT"
data-columnspec='["Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22rad\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22rad\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22sun\\x22,$from,$to,12)","Func:logProxy_proplanta2Plot(\\x22AgroWeather\\x22,\\x22evapor\\x22,$from,$to,0,\\x22day\\x22)","ConstY:110"]'
         data-style='["ftui l3","ftui l5","ftui l0fill","ftui l2fill","ftui l6fill"]'
         data-ptype='["points","quadraticSmooth","bars","steps","lines"]'
         data-uaxis='["primary","primary","secondary","primary","secondary"]'
         data-legend='["","fc_rad","fc_sun","fc_vapor",""]'
         data-yunit=""
         data-ytext="vapor / radiation"
         data-minvalue="0"
         data-maxvalue="10"
         data-yunit_sec="%"
         data-ytext_sec="sun (rel) %"
         data-yticks="auto"
         data-minvalue_sec="0"
         data-maxvalue_sec="110"
data-nofulldays="true"
         data-daysago_start = "0"
data-daysago_end = "-7"
data-crosshair="true"
         data-cursorgroup="1"
         data-scrollgroup="1"
         data-showlegend="true"
data-height="250"
data-xticks="auto">
    </div>
</li>


Wettertrend_Proplanta2:
<li class="halbTransparent" data-row="2" data-col="2" data-sizex="7" data-sizey="2">
<header class="headerTransparent">7 Tage Wettervorhersage Wolken / Regen</header>
<div class="normal"
         data-type="chart"
data-logdevice='["logProxy","logProxy","logProxy"]'
data-logfile="CURRENT"
         data-columnspec='["Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22rain_\\x22,$from,$to,0,\\x22day\\x22)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22cloud_\\x22,$from,$to,0,\\x22day\\x22)","ConstY:0"]'
         data-style='["ftui l6fill","ftui l5fill","ftui l4fill"]'
         data-ptype='["steps","quadraticSmooth","quadraticSmooth"]'
         data-uaxis='["primary","secondary","secondary"]'
         data-legend='["fc_rain","fc_chOfRain","fc_cloud"]'
         data-yunit="mm"
         data-ytext="rain mm"
         data-minvalue="auto"
         data-maxvalue="auto"
         data-yunit_sec="%"
         data-ytext_sec="cloud / chOfRain %"
         data-yticks="auto"
         data-minvalue_sec="0"
         data-maxvalue_sec="110"
data-nofulldays="true"
         data-daysago_start = "0"
data-daysago_end = "-7"
         data-crosshair="true"
         data-cursorgroup="1"
         data-scrollgroup="1"
         data-showlegend="true"
data-height="250"
data-xticks="auto">
    </div>
</li>
<li class="halbTransparent" data-row="4" data-col="2" data-sizex="7" data-sizey="2">
<header class="headerTransparent">Tages Wettervorhersage Wolken / Regen</header>
<div class="normal"
         data-type="chart"
data-logdevice='["logProxy","logProxy","logProxy","logProxy"]'
data-logfile="CURRENT"
         data-columnspec='["Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22rain_\\x22,$from,$to,0,\\x22day\\x22)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22chOfRain_\\x22,$from,$to,0,\\x22day\\x22)","Func:logProxy_proplanta2Plot(\\x22Wettervorhersage_Proplanta\\x22,\\x22cloud_\\x22,$from,$to,0,\\x22day\\x22)","ConstY:0"]'
         data-style='["ftui l4fill","ftui l5fill","ftui l6fill","ftui l2fill"]'
         data-ptype='["steps","quadraticSmooth","quadratic","lines"]'
         data-uaxis='["primary","secondary","secondary","secondary"]'
         data-legend='["fc_rain","fc_chOfRain","fc_cloud",""]'
         data-yunit="mm"
         data-ytext="rain mm"
         data-minvalue="auto"
         data-maxvalue="auto"
         data-yunit_sec="%"
         data-ytext_sec="cloud / chOfRain %"
         data-yticks="auto"
         data-minvalue_sec="0"
         data-maxvalue_sec="110"
data-nofulldays="true"
         data-daysago_start = "0"
data-daysago_end = "-1"
         data-crosshair="true"
         data-cursorgroup="1"
         data-scrollgroup="1"
         data-showlegend="true"
data-height="250"
data-xticks="auto">
    </div>
</li>


Guten Abend,
ich wollte mal höflichst fragen, ob du vll auch deine defines für die File log`s aufzeigen könntest?
Ich weiß das dort sehr viel Arbeit drin steckt, aber fragen kostet ja zum Glück nichts.

Grüße

jnewton957

Hallo,

die wesentliche Arbeit hat Frank gemacht:
https://forum.fhem.de/index.php/topic,22967.msg334713.html#msg334713

define Wettervorhersage_Proplanta PROPLANTA [i]DEINORT[/i] de
attr Wettervorhersage_Proplanta alias DEINORT
attr Wettervorhersage_Proplanta room DEINROOM

define FileLog_Wettervorhersage_Proplanta FileLog /opt/fhem/log/Weather-%Y-%m.log Wettervorhersage_Proplanta:.*
attr FileLog_Wettervorhersage_Proplanta logtype text
attr FileLog_Wettervorhersage_Proplanta room DEINROOM


Ich hoffe, das hilft dir.

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