850hPa 温度平流示例不起作用

850hPa temp Advection Example Not Working

我不熟悉使用 python 绘制和检查 wx 数据。我从这个例子 850 hPa temp advection 开始,它在这个声明中失败了。

ncss = NCSS('{}{dt:%Y%m}/{dt:%Y%m%d}/gfsanl_4_{dt:%Y%m%d}_'
            '{dt:%H}00_000.grb2'.format(base_url, dt=dt))

这让我在 jupyter notebook 中出现以下错误。好像和XML有关。自创建此示例以来,所使用文件的数据结构可能已更改。任何帮助将不胜感激。

Traceback (most recent call last):

  File "C:\users\martbar\anaconda3\lib\site-packages\IPython\core\interactiveshell.py", line 3326, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)

  File "<ipython-input-18-1457913792bc>", line 7, in <module>
    '{dt:%H}00_000.grb2'.format(base_url, dt=dt))

  File "C:\users\martbar\anaconda3\lib\site-packages\siphon\http_util.py", line 379, in __init__
    self._get_metadata()

  File "C:\users\martbar\anaconda3\lib\site-packages\siphon\ncss.py", line 58, in _get_metadata
    root = ET.fromstring(meta_xml)

  File "C:\users\martbar\anaconda3\lib\xml\etree\ElementTree.py", line 1316, in XML
    return parser.close()

  File "<string>", line unknown
ParseError: no element found: line 1, column 0

发生这种情况是因为 URL 已过时。 NCEI 已将模型输出的 TDS URLs 从 https://www.ncei.noaa.gov/thredds/ncss/grid/<product>/ 更新为 .../thredds/ncss/model-<product>/,对于历史数据集,更新为 .../model-<product>-old/。所以在这种情况下,您正确的 base_url 应该是 https://www.ncei.noaa.gov/thredds/ncss/model-gfs-g4-anl-files-old/

重要的后续说明,python-gallery 示例集合已停用,因此已过时。 Unidata Python Training website 提供了更多最新图库,但该站点中的 NCEI TDS URL 目前也已过时。希望不会太久!