《ISPRS International Journal of Geo-Information》:From SYNOP to Station Model Symbols on Web Maps: Leveraging Web Technologies to Implement Standardized WMO Symbology for Synoptic Surface Weather Charts
Dániel Balla and
Mátyás Gede
【字体:
大中小
】
时间:2026年04月02日来源:ISPRS International Journal of Geo-Information 2.8
现代Web地图技术通过实现Web标准,使得利用多种方法在Web上可视化地球科学数据成为可能,并提供高度可定制的专题地图制作能力。在气象学中,地面天气图(synoptic surface weather chart)是传达特定时刻站点观测地面天气信息的重要产品。此类地图采用复杂符号体系,包括多要素地面测站模式符号(surface station model symbol)表示测站数据、等压线(isobar)及专门用于天气锋面可视化的线符号。Synoptic报文(SYNOP标准数字编码,由WMO制定)是由各国气象部门交换的周期性地面气象观测报告。本研究聚焦于可视化经解码的SYNOP报告中的地面气象数据。论文介绍了一个开源JavaScript模块,该模块处理数据解码与动态符号生成,采用符合WMO(World Meteorological Organization)规范的方法,在交互式Web地图环境中为观测GeoJSON数据客户端生成测站模式矢量符号。其输出兼容主流开源Web地图库。该模块通过Pyodide在浏览器中运行Python,并利用Web Workers API进行并行化处理,在不阻塞用户界面线程的前提下加速解码与可视化过程。所开发模块旨在帮助便捷地在气象学Web地图中表示地面气象观测,亦可部署于动态更新的服务器—客户端架构中。代码提供了Leaflet的即用封装。
论文解读:《From SYNOP to Station Model Symbols on Web Maps: Leveraging Web Technologies to Implement Standardized WMO Symbology for Synoptic Surface Weather Charts》——发表于 ISPRS International Journal of Geo-Information
研究背景与问题提出
在气象学与地球科学中,地面天气图(synoptic surface weather chart)通过测站模式符号(station model / surface-plotting model)紧凑呈现多变量地面观测数据(云量、风向风速、气温、露点、海平面气压、天气现象、云状与云底高度等)。WMO-No. 306《Manual on Codes》Volume I.1 Attachment IV 对测站模式符号各子要素的相对方位与图形规范做出了国际标准规定。然而目前Web端气象地图多以静态预渲染栅格瓦片(raster tile/WMS)呈现测站符号,缺乏客户端交互性与动态更新能力;少数交互式Web地图虽使用矢量符号但偏离WMO标准(如NWS Weather and Hazards Data Viewer仅部分合规),且现有成熟测站符号生成能力仅见于MeteoInfo、MetPy、Metview等桌面GIS/气象软件,Web GIS尚无开源、标准化、矢量化的测站模式符号客户端解决方案。此外,现有文献对Web环境下测站模式符号可视化研究较少。因此,Balla Dániel与Gede Mátyás研究人员开展了本研究,旨在开发一套纯客户端运行的开源JavaScript(JS)模块,从SYNOP(FM 12/13/14)报文中解码数据并按WMO标准动态组装SVG(Scalable Vector Graphics)格式的测站模式符号,兼容Leaflet、OpenLayers等主流开源Web地图库,填补Web GIS中WMO标准测站符号绘制的空白。
关键技术方法
研究人员采用JavaScript开发核心模块,以SVG生成矢量符号,通过Pyodide(基于WebAssembly的浏览器内CPython运行环境)加载Python包Pymetdecoder完成SYNOP FM 12/13/14报文解码;使用Web Workers API将Pyodide初始化及解码任务分配至后台线程避免阻塞主UI线程,Worker内部维护待解码报文队列,解码结果以JSON对象回传主线程;测站符号组装按WMO-No. 306 Attachment IV定义5×5网格(共26个cell,中心cell为测站圆),依解码后JSON逐cell填入数值文本或引用OGC Meteorology and Oceanography DWG发布的WorldWeatherSymbolsSVG符号包(CC BY 4.0),其中中心圆按云量填色、连接风矢(wind shaft)并按所在半球确定风羽(wind barb/pennant)方位,缺失数据按规范留空或标特殊标记;顶层Wrapper模块对接GeoJSON要素迭代器,匹配经纬度判断南北半球以控制风羽侧位,异步等待Worker返回后调用对应Web地图库API(如Leaflet的L.divIcon)将最终SVG渲染为点符号。示例数据取自Ogimet仓库欧洲各国气象部门发布的真实SYNOP观测并转为GeoJSON点图层属性。