Seite 1 von 1

Variable: Abweichung Tagesmitteltemperatur zum Monatsmittel

Verfasst: 07 Nov 2014 17:56
von Tex
Um zu berechnen wie sich die Temperatur des aktuelle Tages zum langjähren Monatsmittel verhält, habe ich folgende Variable gebastelt:
<tr><td width="22%" height="25"><font color="Gray"><b><nobr>für einen %monthtxt%tag ist es heute &#8658</nobr></b></font></td>
<td align="center" width="7%" height="25"><img border="0" src="yearicon.gif" width="25" height="25"></td>
<td align="center" width="52%" height="25" colspan="7"><b><font size="3">
%unit_off%
%curminmaxhour_on%
%ws_setmem[1]=%ws_calc[-]=%ws_avgtempmonth[1]%~ %ws_STDV_year[01~0000]%~1%%
%ws_setmem[2]=%ws_calc[-]=%ws_avgtempmonth[2]%~ %ws_STDV_year[02~0000]%~1%%
%ws_setmem[3]=%ws_calc[-]=%ws_avgtempmonth[3]%~ %ws_STDV_year[03~0000]%~1%%
%ws_setmem[4]=%ws_calc[-]=%ws_avgtempmonth[4]%~ %ws_STDV_year[04~0000]%~1%%
%ws_setmem[5]=%ws_calc[-]=%ws_avgtempmonth[5]%~ %ws_STDV_year[05~0000]%~1%%
%ws_setmem[6]=%ws_calc[-]=%ws_avgtempmonth[6]%~ %ws_STDV_year[06~0000]%~1%%
%ws_setmem[7]=%ws_calc[-]=%ws_avgtempmonth[7]%~ %ws_STDV_year[07~0000]%~1%%
%ws_setmem[8]=%ws_calc[-]=%ws_avgtempmonth[8]%~ %ws_STDV_year[08~0000]%~1%%
%ws_setmem[9]=%ws_calc[-]=%ws_avgtempmonth[9]%~ %ws_STDV_year[09~0000]%~1%%
%ws_setmem[10]=%ws_calc[-]=%ws_avgtempmonth[10]%~ %ws_STDV_year[10~0000]%~1%%
%ws_setmem[11]=%ws_calc[-]=%ws_avgtempmonth[11]%~ %ws_STDV_year[11~0000]%~1%%
%ws_setmem[12]=%ws_calc[-]=%ws_avgtempmonth[12]%~ %ws_STDV_year[12~0000]%~1%%
%ws_setmem[14]=%ws_compare[3]=%ws_month%~1~%ws_getmem[1]%~0%%
%ws_setmem[15]=%ws_compare[3]=%ws_month%~2~%ws_getmem[2]%~0%%
%ws_setmem[16]=%ws_compare[3]=%ws_month%~3~%ws_getmem[3]%~0%%
%ws_setmem[17]=%ws_compare[3]=%ws_month%~4~%ws_getmem[4]%~0%%
%ws_setmem[18]=%ws_compare[3]=%ws_month%~5~%ws_getmem[5]%~0%%
%ws_setmem[19]=%ws_compare[3]=%ws_month%~6~%ws_getmem[6]%~0%%
%ws_setmem[20]=%ws_compare[3]=%ws_month%~7~%ws_getmem[7]%~0%%
%ws_setmem[21]=%ws_compare[3]=%ws_month%~8~%ws_getmem[8]%~0%%
%ws_setmem[22]=%ws_compare[3]=%ws_month%~9~%ws_getmem[9]%~0%%
%ws_setmem[23]=%ws_compare[3]=%ws_month%~10~%ws_getmem[10]%~0%%
%ws_setmem[24]=%ws_compare[3]=%ws_month%~11~%ws_getmem[11]%~0%%
%ws_setmem[25]=%ws_compare[3]=%ws_month%~12~%ws_getmem[12]%~0%%
%ws_setmem[26]=%ws_calc[+]=%ws_getmem[14]%~%ws_getmem[15]%~2%%
%ws_setmem[27]=%ws_calc[+]=%ws_getmem[16]%~%ws_getmem[17]%~2%%
%ws_setmem[28]=%ws_calc[+]=%ws_getmem[18]%~%ws_getmem[19]%~2%%
%ws_setmem[29]=%ws_calc[+]=%ws_getmem[20]%~%ws_getmem[21]%~2%%
%ws_setmem[30]=%ws_calc[+]=%ws_getmem[22]%~%ws_getmem[23]%~2%%
%ws_setmem[31]=%ws_calc[+]=%ws_getmem[24]%~%ws_getmem[25]%~2%%
%ws_setmem[32]=%ws_calc[+]=%ws_getmem[26]%~%ws_getmem[27]%~2%%
%ws_setmem[33]=%ws_calc[+]=%ws_getmem[28]%~%ws_getmem[29]%~2%%
%ws_setmem[34]=%ws_calc[+]=%ws_getmem[30]%~%ws_getmem[31]%~2%%
%ws_setmem[35]=%ws_calc[+]=%ws_getmem[32]%~%ws_getmem[33]%~2%%
%ws_setmem[36]=%ws_calc[+]=%ws_getmem[34]%~%ws_getmem[35]%~2%%
%ws_setmem[37]=%ws_calc[-]=%curminmaxhour[3,0,2]%~%ws_getmem[36]%~1%%
%ws_setmem[38]=%ws_compare[2]=%ws_getmem[37]%~0~1~-1%%
%ws_setmem[39]=%ws_calc[*]=%ws_getmem[37]%~%ws_getmem[38]%~1%%
%ws_setmem[40]=%ws_compare[2]=%ws_getmem[37]%~0~zu warm~zu kalt%%
%ws_getmem[39]%° %ws_getmem[40]%
%unit_on%
<nobr><font size="2"></nobr></font></b></td></tr>
Sie gibt einen neutralen Wert ohne Vorzeichen heraus, mit anschließendem Kommentar: zu warm / zu kalt

Es wird automatisch der jeweilige Monat benannt.

Beispiel:
für einen Novembertag ist es heute 4,4° zu warm
Vorraussetzung ist, daß man im WSWIN unter Statistikdaten die entsprechenden Monatsmittelwerte hinterlegt hat.

Verfasst: 07 Nov 2014 20:41
von Werner
@Tex,

warum nimmst Du nicht dieses
Variable ?
StandardTempAbweichung %ws_STDV%
und wertest dann das Ergebnis davon aus (zu kalt, zu warm ...)

Werner

Verfasst: 07 Nov 2014 21:49
von Tex
@Wener

...manchmal sieht man den Wald vor lauter Bäumen nicht! Aber es hat ungemein geübt - meine verwegene Konstruktion... :lol:

Trotzdem vergessen wir dann mal den ganzen Summs da oben und machen es jetzt so:
<tr><td width="22%" height="25"><font color="Gray"><b><nobr>für einen %monthtxt%tag ist es heute &#8658</nobr></b></font></td>
<td align="center" width="7%" height="25"><img border="0" src="yearicon.gif" width="25" height="25"></td>
<td align="center" width="52%" height="25" colspan="7"><b><font size="3">
%unit_off%
%ws_setmem[1]=%ws_compare[2]=%ws_STDV%~0~1~-1%%
%ws_setmem[2]=%ws_calc[*]=%ws_STDV%~%ws_getmem[1]%~1%%
%ws_setmem[3]=%ws_compare[2]=%ws_STDV%~0~zu warm~zu kalt%%
%ws_getmem[2]%° %ws_getmem[3]%
%unit_on%
<nobr><font size="2"></nobr></font></b></td></tr>
herzlichen Dank für den Tip.

Verfasst: 15 Nov 2014 10:23
von Tex
@Werner

ich habe Deine Variable StandardTempAbweichung %ws_STDV% mal mit meiner Excelauswertung und meiner Variablenkonstruktion verglichen. Dabei ist mir aufgefallen, daß Deine Variable anscheinend die Monatsmitteltemperaur mit der aktuellen Temperatur vergleicht. Deshalb gibt es im Tagesgang beträchtliche Abweichungen.

Beispiel:
bei meine Variblenkonstruktion:
Monatsmittel 3,9° Tagesmittel um 14 Uhr 6,5° = 2,6° zu warm
bei Deiner Variable:
Monatsmittel 3,9° T akt um 14 Uhr 11° = 7,1° zu warm

Wenn dann sollte man in diesem Falle besser gleiches miteinander vergleichen (Mittelwerte), ansonsten kommen Werte bei raus, die extrem weit von der Realität liegen können.

Verfasst: 15 Nov 2014 16:30
von stuggi
Es ist heute im Ø 3,0 K wärmer als im langjährigen Monatsmittel

Code: Alles auswählen

Es ist heute im Ø %ws_setmem&#91;1&#93;=%ws_calc&#91;-&#93;=%ws_normaltemp%~%curminmaxhour&#91;3,0,2&#93;%~1%%
               %ws_setmem&#91;2&#93;=%ws_calc&#91;*&#93;=%ws_getmem&#91;1&#93;%~-1,0~1%%
               %ws_compare&#91;2&#93;=%ws_getmem&#91;1&#93;%~0,0~%ws_getmem&#91;1&#93;%~%ws_getmem&#91;2&#93;%% K
               %ws_compare&#91;2&#93;=%ws_getmem&#91;1&#93;%~0,0~<font>k&auml;lter</font>~<font>w&auml;rmer</font>% als im langj&auml;hrigen Monatsmittel
Grüßle Chris

Verfasst: 15 Nov 2014 18:18
von Tex
Danke Chris - so funktioniert es. ich habe es auf meine Bedürfnisse angepaßt, damit es kein Vorzeichen gibt.
<tr><td><font><b><nobr>für einen %monthtxt%tag ist es heute &#8658</nobr></b></font></td>
<td><img></td>
<td><b><font>
%unit_off%
%ws_setmem[1]=%ws_calc[-]=%ws_normaltemp%~%curminmaxhour[3,0,2]%~1%%
%ws_setmem[2]=%ws_compare[2]=%ws_getmem[1]%~0~1~-1%%
%ws_setmem[3]=%ws_calc[*]=%ws_getmem[1]%~%ws_getmem[2]%~1%%
%ws_setmem[4]=%ws_compare[4]=%ws_getmem[1]%~0~zu warm~zu kalt%%
<b>%ws_getmem[3]%° %ws_getmem[4]%</b>
%unit_on%
<nobr><font></nobr></font></b></td></tr>

Verfasst: 16 Nov 2014 14:16
von loaecker
Also ich bin sehr begeistert, was mit den Variablen von Wswin alles möglich ist. Aber ehrlich gesagt muss man langsam ein Programmierer-Studium absolvieren, um da noch halbwegs durchblicken zu können. Deshalb "Hut ab" vor Tex und allen anderen, die hier Variablen basteln, wovon andere profitieren können, so wie ich beispielsweise. Ich habe die Variable in meinem Ticker eingbaut. Danke....
Aber eine Frage, die für den ein oder anderen von euch vielleicht blöd erscheinen mag, habe ich noch: Wenn ich die Variablen, die inzwischen 40 Zeilig sind, in meine custom.txt integriere, dann habe ich eine ewig breite Tabellenzelle, die im Browser für einen Wert auch so breit stehen bleibt. Wie erreiche ich eine ebenso schmale Zeile, in der Höhe der Zahl, die ich darstellen möchte?

Verfasst: 16 Nov 2014 15:48
von Tex
Moin Lothar,

das hat nichts mit den Variablen an sich zu tun, sondern an dem html-codes.

Ich habe mir mal Deine Customseite als html-Quellcode aufgerufen.
Da steht in der Zeile der Lufttemperatur folgendes:
<td style="font-weight: bold; color: rgb(0, 0, 153); background-color: rgb(204, 204, 255); width: 289px;">Lufttemperatur</td>
In der Zeile der Feuchtetemperatur:
<td style="font-family: Arial; font-weight: bold; color: rgb(0, 0, 153); background-color: rgb(204, 204, 255); width: 272px;">Feuchttemperatur
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</td>
Also zwei unterschiedliche Breiten. Deshalb ist ab der Feuchtetemperatur ein Absartz drin. Wenn Du dort die Pixelzahl auf ebenfalls 289 erhöhst, sollte es gleich sein - es sei denn der text ist etwas zu lan und kann nicht in die nächste Zeile verschoben werden.

In Deiner Letzten Zeile: "Warnung vor Glätte" steht in rot soviel Text, das die weite von 269px nicht ausreicht und automatisch das feld verbreitert wird.

Versuch mal die beiden oberen Breiten mit 300 oder 310 anzugeben, und dann solange rumdaddeln bis es paßt.
Immer wenn Du neu mit <table> anfängst, werden die alten Breiten aufgehoben und nicht mehr automatisch an die länste zeile angepaßt. Es kann also sein, Daß du auch noch bei der Sonnenscheindauer etc. größere Weiten eingebn mußt.

Hallo TEX

Verfasst: 16 Nov 2014 16:50
von hellebelle
Auch ich möchte mich auf diesen Weg bei dir bedanken.
Deine Variablen sind spitze,und ich baue Sie auch auf meiner Seite ein.
Bitte mach weiter so.
mfg Helmut :D