前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Metpy:气象数据处理及可视化

Metpy:气象数据处理及可视化

作者头像
bugsuse
发布2020-04-21 17:45:19
4.8K0
发布2020-04-21 17:45:19
举报
文章被收录于专栏:气象杂货铺气象杂货铺

Metpy 是应用于气象领域的开源Python包,可以进行气象数据的处理,可视化以及气象要素的计算等。

在气象数据处理方面,可以读取并处理很多格式的数据,比如:WSR-88D,NEXRAD及GINI卫星数据,而且提供了接口可以直接获取 uwyo 提供的探空数据。

在可视化方面,其提供了绘制 Skewt 和 站点图的函数,可以非常方便的创建图形。绘制 Skewt 时提供了不少高级绘制方法,可以很方便的添加 hodograph 等信息;绘制 站点图 时也可以设置常用的气象符号。

当然,也支持很多气象要素的计算,而且为了保证计算的正确性,其提供了单位接口。关于这部分内容留待大家去探索,而且由于此包仍在不断的优化,如果你感兴趣的话,完全可以参与其中。

安装

Metpy 支持 python2.7 和 python >= 3.4 版本,安装前需要安装依赖包:

  • NumPy >= 1.9.1
  • SciPy >= 0.14.0
  • Matplotlib >= 1.4.0
  • pint >= 0.7

对于 3.4 以前的 python 版本,需要安装 enum34 包。

PyProj 是可选的依赖包,只有当需要使用 CDM 接口时才会使用此包。

以上依赖均可使用 pip 命令进行安装。

安装好依赖包之后:

代码语言:javascript
复制
pip install metpy

如果你使用的 conda 包管理器,你也可以使用 conda 进行安装:

代码语言:javascript
复制
conda install -c conda-forge metpy

Skewt

利用 uwyo 探空数据绘制 Skewt,并添加探空网站获取的相关信息:

风杆的单位为 knot,即和 uwyo 网站的探空数据单位一致。

上例中使用了 get_parm_from_uwyo 函数获取相应的探空信息(函数见注3链接。此函数并未考虑异常处理,如果要直接加入 metpy 包中,需要进一步修改)。脚本中使用 get_upper_air_data 获取探空数据时,仅获取到以下变量,其中并未包含高度信息,想要获取更多信息可更改源代码:

下图是官方文档中示例skewt图,其中添加了一些额外信息(绘图脚本见官方文档)

以下是站点图出图效果

还可以将不规则格点数据插值到规则网格中

同时提供了读取雷达和卫星数据的接口(当然都是美国常用的雷达和卫星数据)

关于 Metpy 的更多功能,可查阅官方文档。


注1:

http://www.unidata.ucar.edu/blogs/news/entry/metpy_an_open_source_python

注2:https://unidata.github.io/MetPy/index.html

注3:https://pan.baidu.com/s/1i59OCZj

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-04-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 气象杂货铺 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档