meteva

提供气象产品检验相关python程序


图形检验产品——风

<p>[TOC]</p> <pre><code class="language-python">%matplotlib inline %load_ext autoreload %autoreload 2 import meteva.method as mem import meteva.base as meb import numpy as np</code></pre> <p>对风预报的数值型检验指标通常只能作为一种评价手段,对预报改进还是难以产生直观的帮助。为此需要一些更为直观的图形产品帮助我们分析风预报的系统性偏差。如果仅仅对于风速进行检验分析,我们可以将其看成是连续型变量、二分类或多分类的预报问题,采用相应的检验方法或图形产品。但如果要结合风向风速一起进行分析的话,就有必要设计一些针对性的方式进行对比展示。</p> <pre><code class="language-python">#生成一些随机的数据用于展示风场检验的算法 nsample = 3000 u_ob = np.random.randn(nsample)*1.2 + 2 v_ob = np.random.randn(nsample)*1.2 + 2 error_u1 = np.random.randn(nsample) -2 error_v1 = np.random.randn(nsample) + 2 u_fo1 = u_ob+error_u1 v_fo1 = v_ob+error_v1 error_u2 = np.random.randn(nsample) +2 error_v2 = np.random.randn(nsample) -2 u_fo2 = u_ob+error_u2 v_fo2 = v_ob+error_v2 u_fo = np.array([u_fo1,u_fo2]) v_fo = np.array([v_fo1,v_fo2])</code></pre> <h1>风矢量散点分布图</h1> <p><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;scatter_uv(u_ob,u_fo,v_ob,v_fo,member_list = None,title = &quot;风矢量散点分布图&quot; , vmax=None, ncol=None, save_path=None, show=False, dpi=300, sup_fontsize=10, width=None, height=None,add_randn_to_ob = 0,x_label =&quot;U分量&quot;,y_label = &quot;v_分量&quot;)&lt;/font&gt;</strong><br /> 将一组观测和预报的u,v风样本以散点的形式绘制在图形中,以对观测和预报的风向风速进行总体的对比。在这个对比中并不区分每一次具体的预报情况,而是考察一段时间(或区域)内风向风速的分布情况。考虑到数据样本很大时如果用单一颜色的散点绘图,则无法区分散点的疏密情况,为此采用散点所在位置的散点概率密度表示为散点的颜色。散点概率密度 = 1m/s × 1m/s 区间内的散点数与总样本数之比。</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;u_ob&lt;/font&gt;</strong></td> <td style="text-align: left;">观测的u分量,numpy数组</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;u_fo&lt;/font&gt;</strong></td> <td style="text-align: left;">预报的u分量,numpy数组,shape和u_ob完全一致或比u_ob高一维(用于同时进行多家预报结果检验),u_fo.shape低维与u_ob.shape保持一致</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;v_ob&lt;/font&gt;</strong></td> <td style="text-align: left;">观测的v分量,numpy数组,shape 和u_ob完全一致</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;v_fo&lt;/font&gt;</strong></td> <td style="text-align: left;">预报的v分量,numpy数组,shape和u_ob完全一致或比u_ob高一维(用于同时进行多家预报结果检验),v_fo.shape低维与v_ob.shape保持一致</td> </tr> <tr> <td style="text-align: left;"><strong>member_list</strong></td> <td style="text-align: left;">预报成员的名称列表</td> </tr> <tr> <td style="text-align: left;"><strong>title</strong></td> <td style="text-align: left;">图片标题,缺省时 为“风矢量散点分布图”</td> </tr> <tr> <td style="text-align: left;"><strong>vmax</strong></td> <td style="text-align: left;">绘图窗口x和y轴方向最大绝对值,通常在绘制单张图形时无需设置,在批量绘制多张该检验图时为了方便保持不同图片之间的可对比性,可以统一设置该参数</td> </tr> <tr> <td style="text-align: left;"><strong>ncol</strong></td> <td style="text-align: left;">subplot的列数,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>save_path</strong></td> <td style="text-align: left;">图片保存路径,缺省时不输出图片,而是以默认绘图窗口形式展示</td> </tr> <tr> <td style="text-align: left;"><strong>show</strong></td> <td style="text-align: left;">是否在屏幕显示图片,如果save_path 和save_dir 为都None时,程序内部会自动将show设置True</td> </tr> <tr> <td style="text-align: left;"><strong>dpi</strong></td> <td style="text-align: left;">绘图所采用dpi参数,效果同matplotlib中dpi参数</td> </tr> <tr> <td style="text-align: left;"><strong>sup_fontsize</strong></td> <td style="text-align: left;">图片标题的字体大小,其它字体将根据标题字体大小自动设置,其中坐标轴字体大小 = sup_fontsize <em> 0.9, 坐标刻度的字体大小 = sup_fontsize </em> 0.8</td> </tr> <tr> <td style="text-align: left;"><strong>width</strong></td> <td style="text-align: left;">图片的宽度,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>height</strong></td> <td style="text-align: left;">图片的高度,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>add_randn_to_ob</strong></td> <td style="text-align: left;">当样本中存在多个时效的预报同时检验的情况,绘制在图上的观测样本位置会完全重叠,在视觉效果上显得比预报样本少,不便于对比,为了方便对比,可以在观测样本添加一个小幅的扰动,以改善对比的视觉效果</td> </tr> <tr> <td style="text-align: left;"><strong>x_label</strong></td> <td style="text-align: left;">x轴坐标名称</td> </tr> <tr> <td style="text-align: left;"><strong>y_label</strong></td> <td style="text-align: left;">x轴坐标名称</td> </tr> <tr> <td style="text-align: left;">&lt;font face=&quot;黑体&quot; color=blue size=5&gt;return&lt;/font&gt;</td> <td style="text-align: left;">风向预报准确率,如果d_fo和d_ob的shape一致,说明只有一家预报,则返回实数,否则说明是在同时检验多家预报,返回结果为一维数组</td> </tr> </tbody> </table> <pre><code class="language-python">mem.scatter_uv(u_ob,u_fo,v_ob,v_fo,member_list = [&amp;quot;ECMWF&amp;quot;,&amp;quot;GRAPES&amp;quot;], save_path = r&amp;quot;H:\test_data\output\method\vector\scatter_uv.png&amp;quot;,show = True,ncol = 3)</code></pre> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=156809c2ec7960ae259b10ec485519b5&amp;amp;file=file.png" alt="" /></p> <h1>风矢量概率密度分布图</h1> <p><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;probability_density_uv(u_ob,u_fo,v_ob,v_fo,member_list = None,title = &quot;风矢量概率密度分布图&quot;, vmax=None, ncol=None, save_path=None, show=False, dpi=300, sup_fontsize=10, width=None, height=None,add_randn_to_ob = 0.0,smooth_times = 0,linewidths = 1 ,x_label =&quot;U分量&quot;,y_label = &quot;v_分量&quot;)&lt;/font&gt;</strong><br /> 根据一组观测和预报的风矢量样本,统计风矢量在U-V二维平面上每个区间的概率密度。统计方法是在U-V平面上划分等间距的网格,统计每个网格内散点的数目,将其除以总样本数,再除以网格的面积,得到1m/s ×1m/s 面积内的散点概率密度,经过一定的平滑后绘制成等值线。</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;u_ob&lt;/font&gt;</strong></td> <td style="text-align: left;">观测的u分量,numpy数组</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;u_fo&lt;/font&gt;</strong></td> <td style="text-align: left;">预报的u分量,numpy数组,shape和u_ob完全一致或比u_ob高一维(用于同时进行多家预报结果检验),u_fo.shape低维与u_ob.shape保持一致</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;v_ob&lt;/font&gt;</strong></td> <td style="text-align: left;">观测的v分量,numpy数组,shape 和u_ob完全一致</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;v_fo&lt;/font&gt;</strong></td> <td style="text-align: left;">预报的v分量,numpy数组,shape和u_ob完全一致或比u_ob高一维(用于同时进行多家预报结果检验),v_fo.shape低维与v_ob.shape保持一致</td> </tr> <tr> <td style="text-align: left;"><strong>member_list</strong></td> <td style="text-align: left;">预报成员的名称列表</td> </tr> <tr> <td style="text-align: left;"><strong>title</strong></td> <td style="text-align: left;">图片标题,缺省时 为“风矢量概率密度分布图”</td> </tr> <tr> <td style="text-align: left;"><strong>vmax</strong></td> <td style="text-align: left;">绘图窗口x和y轴方向最大绝对值,通常在绘制单张图形时无需设置,在批量绘制多张该检验图时为了方便保持不同图片之间的可对比性,可以统一设置该参数</td> </tr> <tr> <td style="text-align: left;"><strong>ncol</strong></td> <td style="text-align: left;">subplot的列数,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>save_path</strong></td> <td style="text-align: left;">图片保存路径,缺省时不输出图片,而是以默认绘图窗口形式展示</td> </tr> <tr> <td style="text-align: left;"><strong>show</strong></td> <td style="text-align: left;">是否在屏幕显示图片,如果save_path 和save_dir 为都None时,程序内部会自动将show设置True</td> </tr> <tr> <td style="text-align: left;"><strong>dpi</strong></td> <td style="text-align: left;">绘图所采用dpi参数,效果同matplotlib中dpi参数</td> </tr> <tr> <td style="text-align: left;"><strong>sup_fontsize</strong></td> <td style="text-align: left;">图片标题的字体大小,其它字体将根据标题字体大小自动设置,其中坐标轴字体大小 = sup_fontsize <em> 0.9, 坐标刻度的字体大小 = sup_fontsize </em> 0.8</td> </tr> <tr> <td style="text-align: left;"><strong>width</strong></td> <td style="text-align: left;">图片的宽度,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>height</strong></td> <td style="text-align: left;">图片的高度,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>add_randn_to_ob</strong></td> <td style="text-align: left;">当样本中存在多个时效的预报同时检验的情况,绘制在图上的观测样本位置会完全重叠,在视觉效果上显得比预报样本少,不便于对比,为了方便对比,可以在观测样本添加一个小幅的扰动,以改善对比的视觉效果</td> </tr> <tr> <td style="text-align: left;"><strong>smooth_times</strong></td> <td style="text-align: left;">将(U,V)平面上离散的点统计成格点形式的概率密度,经过smooth_times次9点平滑后,再绘制成等值线</td> </tr> <tr> <td style="text-align: left;"><strong>x_label</strong></td> <td style="text-align: left;">x轴坐标名称</td> </tr> <tr> <td style="text-align: left;"><strong>y_label</strong></td> <td style="text-align: left;">x轴坐标名称</td> </tr> <tr> <td style="text-align: left;">&lt;font face=&quot;黑体&quot; color=blue size=5&gt;return&lt;/font&gt;</td> <td style="text-align: left;">风向预报准确率,如果d_fo和d_ob的shape一致,说明只有一家预报,则返回实数,否则说明是在同时检验多家预报,返回结果为一维数组</td> </tr> </tbody> </table> <pre><code class="language-python">mem.probability_density_uv(u_ob,u_fo,v_ob,v_fo,member_list = [&amp;quot;ECMWF&amp;quot;,&amp;quot;GRAPES&amp;quot;],smooth_times=5, save_path = r&amp;quot;H:\test_data\output\method\vector\scatter_uv.png&amp;quot;,show = True)</code></pre> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=f382df0b243ac6d31b098d1c9969573a&amp;amp;file=file.png" alt="" /></p> <h1>风矢量误差散点分布图</h1> <p><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;scatter_uv_error(u_ob,u_fo,v_ob,v_fo,member_list = None,title = &quot;风矢量误差散点分布图&quot; , vmax=None, ncol=None, save_path=None, show=False, dpi=300, sup_fontsize=10, width=None, height=None,x_label =&quot;U分量&quot;,y_label = &quot;v_分量&quot;)&lt;/font&gt;</strong><br /> 将预报的u - 观测的u,预报的v - 观测的v,分别得到每一个样本的du,dv,将所有样本的du,dv 绘制在散点图中。并以散点的概率密度来区分散点所在位置的疏密情况。散点概率密度 = 1m/s × 1m/s 区间内的散点数与总样本数之比。</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;u_ob&lt;/font&gt;</strong></td> <td style="text-align: left;">观测的u分量,numpy数组</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;u_fo&lt;/font&gt;</strong></td> <td style="text-align: left;">预报的u分量,numpy数组,shape和u_ob完全一致或比u_ob高一维(用于同时进行多家预报结果检验),u_fo.shape低维与u_ob.shape保持一致</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;v_ob&lt;/font&gt;</strong></td> <td style="text-align: left;">观测的v分量,numpy数组,shape 和u_ob完全一致</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;v_fo&lt;/font&gt;</strong></td> <td style="text-align: left;">预报的v分量,numpy数组,shape和u_ob完全一致或比u_ob高一维(用于同时进行多家预报结果检验),v_fo.shape低维与v_ob.shape保持一致</td> </tr> <tr> <td style="text-align: left;"><strong>member_list</strong></td> <td style="text-align: left;">预报成员的名称列表</td> </tr> <tr> <td style="text-align: left;"><strong>vmax</strong></td> <td style="text-align: left;">绘图窗口x和y轴方向最大绝对值,通常在绘制单张图形时无需设置,在批量绘制多张该检验图时为了方便保持不同图片之间的可对比性,可以统一设置该参数</td> </tr> <tr> <td style="text-align: left;"><strong>ncol</strong></td> <td style="text-align: left;">subplot的列数,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>save_path</strong></td> <td style="text-align: left;">图片保存路径,缺省时不输出图片,而是以默认绘图窗口形式展示</td> </tr> <tr> <td style="text-align: left;"><strong>show</strong></td> <td style="text-align: left;">是否在屏幕显示图片,如果save_path 和save_dir 为都None时,程序内部会自动将show设置True</td> </tr> <tr> <td style="text-align: left;"><strong>dpi</strong></td> <td style="text-align: left;">绘图所采用dpi参数,效果同matplotlib中dpi参数</td> </tr> <tr> <td style="text-align: left;"><strong>title</strong></td> <td style="text-align: left;">图片标题,缺省时 为“散点回归图”</td> </tr> <tr> <td style="text-align: left;"><strong>sup_fontsize</strong></td> <td style="text-align: left;">图片标题的字体大小,其它字体将根据标题字体大小自动设置,其中坐标轴字体大小 = sup_fontsize <em> 0.9, 坐标刻度的字体大小 = sup_fontsize </em> 0.8</td> </tr> <tr> <td style="text-align: left;"><strong>width</strong></td> <td style="text-align: left;">图片的宽度,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>height</strong></td> <td style="text-align: left;">图片的高度,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>x_label</strong></td> <td style="text-align: left;">x轴坐标名称</td> </tr> <tr> <td style="text-align: left;"><strong>y_label</strong></td> <td style="text-align: left;">x轴坐标名称</td> </tr> <tr> <td style="text-align: left;">&lt;font face=&quot;黑体&quot; color=blue size=5&gt;return&lt;/font&gt;</td> <td style="text-align: left;">风向预报准确率,如果d_fo和d_ob的shape一致,说明只有一家预报,则返回实数,否则说明是在同时检验多家预报,返回结果为一维数组</td> </tr> </tbody> </table> <pre><code class="language-python">mem.scatter_uv_error(u_ob,u_fo,v_ob,v_fo,member_list = [&amp;quot;ECMWF&amp;quot;,&amp;quot;GRAPES&amp;quot;], save_path = r&amp;quot;H:\test_data\output\method\vector\scatter_uv_error.png&amp;quot;,show = True)</code></pre> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=c4c386cbb3b0513a373a2ef38cac8128&amp;amp;file=file.png" alt="" /></p> <h1>风矢量分布统计对比图</h1> <p><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;statistic_uv(u_ob,u_fo,v_ob,v_fo,member_list = None,title = &quot;风矢量分布统计图&quot; ,ob_uncertainty = 0.3, vmax=None, ncol=None, save_path=None, show=False, dpi=300, sup_fontsize=10, width=None, height=None)&lt;/font&gt;</strong><br /> 统计风在不同的角度上频率、平均风速和风速的一致性,并以一条颜色和宽度随角度变化的条带表示:</p> <ol> <li>频率:取某一个中心角度左右22.5度(即夹角为45度)的范围内的样本数/总样本数代表风向在某个角度附近的频率。 在图形中某个角度的条带宽度代表频率值。</li> <li>平均速度:取某一个中心角度左右22.5度(即夹角为45度)的范围内的所有样本的风速的平均代表风沿着该角度的平均风速。在图形中以条带中点位置至原点的距离代表该角度上的平均速度。 </li> <li>风速的一致性:某一个中心角度左右22.5度(即夹角为45度)的范围内的所有样本的风速的平均值m和标准差d,采用 m/(m+d)来代表风速的一致性,当d = 0时,即所选样本的风速都相等时,一致性 = 1。 在图形中,以条带的颜色代表该角度上的风速一致性。 </li> </ol> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;u_ob&lt;/font&gt;</strong></td> <td style="text-align: left;">观测的u分量,numpy数组</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;u_fo&lt;/font&gt;</strong></td> <td style="text-align: left;">预报的u分量,numpy数组,shape和u_ob完全一致或比u_ob高一维(用于同时进行多家预报结果检验),u_fo.shape低维与u_ob.shape保持一致</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;v_ob&lt;/font&gt;</strong></td> <td style="text-align: left;">观测的v分量,numpy数组,shape 和u_ob完全一致</td> </tr> <tr> <td style="text-align: left;"><strong>&lt;font face=&quot;黑体&quot; color=blue size = 5&gt;v_fo&lt;/font&gt;</strong></td> <td style="text-align: left;">预报的v分量,numpy数组,shape和u_ob完全一致或比u_ob高一维(用于同时进行多家预报结果检验),v_fo.shape低维与v_ob.shape保持一致</td> </tr> <tr> <td style="text-align: left;"><strong>member_list</strong></td> <td style="text-align: left;">预报成员的名称列表</td> </tr> <tr> <td style="text-align: left;"><strong>vmax</strong></td> <td style="text-align: left;">绘图窗口x和y轴方向最大绝对值,通常在绘制单张图形时无需设置,在批量绘制多张该检验图时为了方便保持不同图片之间的可对比性,可以统一设置该参数</td> </tr> <tr> <td style="text-align: left;"><strong>ncol</strong></td> <td style="text-align: left;">subplot的列数,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>save_path</strong></td> <td style="text-align: left;">图片保存路径,缺省时不输出图片,而是以默认绘图窗口形式展示</td> </tr> <tr> <td style="text-align: left;"><strong>show</strong></td> <td style="text-align: left;">是否在屏幕显示图片,如果save_path 和save_dir 为都None时,程序内部会自动将show设置True</td> </tr> <tr> <td style="text-align: left;"><strong>dpi</strong></td> <td style="text-align: left;">绘图所采用dpi参数,效果同matplotlib中dpi参数</td> </tr> <tr> <td style="text-align: left;"><strong>title</strong></td> <td style="text-align: left;">图片标题,缺省时 为“散点回归图”</td> </tr> <tr> <td style="text-align: left;"><strong>sup_fontsize</strong></td> <td style="text-align: left;">图片标题的字体大小,其它字体将根据标题字体大小自动设置,其中坐标轴字体大小 = sup_fontsize <em> 0.9, 坐标刻度的字体大小 = sup_fontsize </em> 0.8</td> </tr> <tr> <td style="text-align: left;"><strong>width</strong></td> <td style="text-align: left;">图片的宽度,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;"><strong>height</strong></td> <td style="text-align: left;">图片的高度,缺省时程序自动设置</td> </tr> <tr> <td style="text-align: left;">&lt;font face=&quot;黑体&quot; color=blue size=5&gt;return&lt;/font&gt;</td> <td style="text-align: left;">风向预报准确率,如果d_fo和d_ob的shape一致,说明只有一家预报,则返回实数,否则说明是在同时检验多家预报,返回结果为一维数组</td> </tr> </tbody> </table> <pre><code class="language-python">mem.statistic_uv(u_ob,u_fo,v_ob,v_fo,member_list = [&amp;quot;ECMWF&amp;quot;,&amp;quot;GRAPES&amp;quot;], save_path = r&amp;quot;H:\test_data\output\method\vector\statisitic_uv.png&amp;quot;,show = True)</code></pre> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=d28db2f05151c03e659671698cd95c3a&amp;amp;file=file.png" alt="" /></p> <p>可以结合风矢量散点分布图来理解风矢量分布统计图的内容。在上述示例中,如风矢量散点分布图所示,观测的样本(红点)主要在东北象限,即吹向东北方向的风(西南风)的频率更大,在风矢量分布统计图东北象限的彩带宽度更大,同时东北象限的彩带距离原点位置更远,即代表西南风的风速普遍要大于其它方向的风速。 在图中,不同的预报会在不同的子图中出现,并以蓝-青色调进行显示,而观测在不同子图中重复出现,以红-黄色调显示。 从上图中可以看出,在上述随机的生成的示例中观测的盛行风向是西南风,而ECMWF模式预报的盛行风向是南风,GRAPES模式预报的盛行风向是西风。同时图形展示的结果也显示,ECMWF模式在偏南风方向预报的风速一致性较高,GRAPES模式在偏西风方向预报的风速一致性较高。</p>

页面列表

ITEM_HTML