python绘图 | 国家气象局开源预报检验库(多图预警)

2020-10-15 15:17:22 浏览数 (1)

2020.07.23国家气象中心刘凑华高工介绍了全流程检验评估系统(Meteva),详细内容见视频(视频来源「happy科研」,欢迎关注)。

Meteva介绍

Meteva程序库由国家气象中心预报技术研发室检验科负责研发,是面向气象预报产品及中间产品进行全面检验评估所需要用到函数和功能的集成。它是国内第一款专门用于气象预报检验的Python程序库。

目前该程序提供了可供复用的函数达200多个,集成了开展检验所需的基础函数(包括数据的读写、插值、累加、平均、选取、分组等)、检验算法(包括各类二分类、多分类、连续型变量、概率预报和集合预报的检验等)和检验图形产品(包括空间对比图、时间序列对比、误差序列分析图、误差空间分布图等)。

有无预报检验

  • 综合检验图performance() 绘制二分类预报的综合检验图,其横坐标为成功率,纵坐标为命中率,并绘制了等bias和等ts曲线辅助线,检验结果以圆点方式显示在图中,从而可以直接浏览成功率、命中率、bias和ts等检验指标。

多分类预报检验

  • 频率统计图frequency_histogram() 统计观测和预报分别为各种类别的样本数,并以柱状图形式绘制成图片

连续型预报检验

  • 散点回归图scatter_regress() 绘制观测-预报散点图和线性回归曲线,横坐标为观测值,纵坐标为预报值,横坐标和纵坐标取值范围自动设为一致,在图形中间添加了完美预报的参考线。
  • 频率关系图pdf_plot() 将观测和预报值分别从小到大排序,将排序后的两组数据绘制成包含两幅子图的频率匹配关系图。第一幅子图为观测和预报的概率分布函数对比图,第二幅子图频率匹配映射关系图。图中横坐标和纵坐标取值范围自动设为一致,并在图形中间添加了完美预报的参考线。
  • 频率对比箱须图box_plot_continue() 分别绘制了观测和预报的频率箱须图,横坐标为”观测”、”预报”,纵坐标为数据值, 箱须图包含了第一四分位数、中位数、第三四分位数与异常值(离群值)等不同等级。

概率预报检验

  • 区分能力图discrimination() 绘制预报概率为不同区间下观测样本事件发生和不发生的样本占总样本的比例。
  • ROC图roc() 绘制ROC曲线,曲线以空报率(pofd)作为横坐标,以命中率(pod)为纵坐标。其中曲线描点为预报概率设置不同阈值作为预报发生的条件下,对应的(空报率,命中率)。
  • 可靠性图reliability() 绘制可靠性图,其中横坐标为预报概率。纵向分为主次两幅子图,主图纵坐标为同一预报概率区间下实况样本事件发生的比例。次图为每个预报区间对应的预报样本数。
  • 综合检验图comprehensive_probability() 可靠性图、ROC图和区分能力图的组合图。

集合预报检验

  • 排序柱状图rank_histogram() 反映集合预报的发散时候和其不确定性一致。
  • 频率对比箱须图box_plot_ensemble() 分别绘制了观测和预报的频率箱须图,横坐标为”观测”、”预报”,以及预报成员编号,纵坐标为数据值,包含了第一四分位数、中位数、第三四分位数与异常值(离群值)

空间分布对比

  • 降水预报和观测分布综合对比图rain_24h_comprehensive_sg() 根据输入的站点观测数据和网格预报数据,绘制对比图
  • 温度预报和零场分布综合对比图temper_comprehensive_gg()

误差序列分析

  • 误差综合分析图(绝对值)error_boxplot_abs() 根据输入的站点数据,选择部分数据,将选择的数据进行进行分组检验,绘制误差综合分析图

时间序列对比

  • 多模式多时效对比图time_list_line() 将不同时刻起报的预报和实况在同一张图中进行显示对比,便于及时发现问题,以曲线的方式叠加显示。
  • 多时效预报误差和稳定性对比图time_list_mesh() 可以便于同时展示要素对比图和误差图,误差图的误差分布更显眼,更便于发现问题。

官方文档

全流程检验程序官方说明文档网址: https://www.showdoc.cc/meteva Github开源代码网址: https://github.com/nmcdev/meteva

尾声

总体来说,这个全流程检验库包括的内容非常丰富,也考虑了很多细节,囊括了基本所有主流的检验方式和检验内容,避免了重复造轮子。 对检验工作有着强需求的小伙伴赶快来试试吧。

0 人点赞