Creating the station model picture used in weather maps from WeeWX data

122 views
Skip to first unread message

Karen K

unread,
May 31, 2023, 3:59:43 PM5/31/23
to weewx-user
I started enhancing the $presentweather tag to create an SVG picture showing the actual readings of the station in the layout used in weather maps. For the German Weather Service it looks like this:

station2.png
The WMO defined a slightly different layout, which can be created, too.

For more information see:

hesf...@gmail.com

unread,
Jun 5, 2023, 1:50:02 AM6/5/23
to weewx-user
Gutem Morgen,

wie kann ich die "SVG"  auf meiner Seite nutzen.
Der Versuch mit der SearchList-Erweiterung $presentweather aus Stationsmodell

Beispiel:

$presentweather(ww=$current.ww,n=$hour($data_binding='dwd_binding').cloudcover.avg.raw,windDir=$current.windDir,windSpeed=$current.windSpeed,outTemp=$current.outTemp,dewpoint=$current.dewpoint,barometer=$span(hour_delta=3).barometer).station(format='DWD',width=40)

endet mit:

Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****  Traceback (most recent call last):
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****    File "/home/weewx/bin/weewx/cheetahgenerator.py", line 348, in generate
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****      unicode_string = compiled_template.respond()
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****    File "_home_weewx_skins_Standard_indexRad_html_tmpl.py", line 513, in respond
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****    File "/usr/lib/python3/dist-packages/Cheetah/Template.py", line 1708, in _handleCheetahInclude
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****      self._CHEETAH__cheetahIncludes[_includeID].respond(trans)
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****    File "_home_weewx_skins_Standard_links_forecast_inc.py", line 127, in respond
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****    File "/home/weewx/bin/user/weathercodes.py", line 1953, in presentweather
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****      return PresentWeatherBinder(wwl=ww, n=n, night=night, lang=self.lang, ww_texts=self.ww_texts, wawal=wawa, **kwargs)
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****    File "/home/weewx/bin/user/weathercodes.py", line 1360, in __init__
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****      if wwl.value_t[2]=='group_wmo_wawa':
Jun  5 07:35:39 wetter weewx-weewx[762396] ERROR weewx.cheetahgenerator: ****  TypeError: 'UnknownType' object is not subscriptable

in "home_weewx_skins_Standard_indexRad_html_tmpl.py habe ich das Beispiel eingefügt.
Meine Änderung nur in:

    # sys.path.append('/usr/share/weewx')
    sys.path.append('/home/weewx')

da WEEWX bei mir in /home/weewx liegt und nicht unter /usr/share/weewx

Die data_binding = 'dwd_binding' für DWD und die data_binding='wx_binding' für weewx existieren.

Gruß
Hartmut

Karen K

unread,
Jun 5, 2023, 12:07:09 PM6/5/23
to weewx-user
Damit $current.ww funktioniert, muß es die Meßgröße (observation type) ww im Meßdatensatz auch geben. So wie es da steht, ist der Wert offensichtlich nicht aus der Vorhersage zu entnehmen. Um den Wert der Vorhersage zu entnehmen, muß es (nicht getestet) $hour($data_binding='dwd_binding').presentWeather.max.raw heißen.
Reply all
Reply to author
Forward
0 new messages