metdig

智能网格预报可视化诊断分析及权重推荐系统


diag_theme_ne

<p>[TOC]</p> <h1>10米风场+散度(填色)、2米露点(等值线)产品绘制</h1> <p>10米风场+散度(填色)、2米露点(等值线)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_obs_wind_div_td(u10m, v10m, div, td, map_extent=(60, 145, 15, 55),                      div_contourf_kwargs={}, td_contour_kwargs={}, uv_barbs_kwargs={},                      **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">u10m</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">地面10米U风</td> </tr> <tr> <td style="text-align: left;">v10m</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">地面10米V风</td> </tr> <tr> <td style="text-align: left;">div</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">散度</td> </tr> <tr> <td style="text-align: left;">td</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">露点温度</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">div_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">td_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">uv_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_obs_stations from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal import metdig.utl as mdgstda import meteva.base as meb # get area map_extent = get_map_area(area) td = get_obs_stations(obs_time=obs_time,data_name=data_name,var_name=&amp;#039;td&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() td[&amp;#039;sfc_chn_hor&amp;#039;].loc[td[&amp;#039;sfc_chn_hor&amp;#039;]&amp;gt;20]==np.nan # td[f&amp;#039;{data_name}&amp;#039;].loc[td[f&amp;#039;{data_name}&amp;#039;]&amp;gt;20]==np.nan temp = get_obs_stations(obs_time=obs_time,data_name=data_name,var_name=&amp;#039;gust10m&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() tempdir = get_obs_stations(obs_time=obs_time,data_name=data_name,var_name=&amp;#039;gustdir10m&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() temp=temp.where(temp[&amp;#039;id&amp;#039;].isin(list(set(temp[&amp;#039;id&amp;#039;]).intersection(tempdir[&amp;#039;id&amp;#039;])))).dropna().sort_values(&amp;#039;lon&amp;#039;).reset_index(drop=True) tempdir=tempdir.where(tempdir[&amp;#039;id&amp;#039;].isin(list(set(tempdir[&amp;#039;id&amp;#039;]).intersection(temp[&amp;#039;id&amp;#039;])))).dropna().sort_values(&amp;#039;lon&amp;#039;).reset_index(drop=True) gust10m=temp gustdir10m=tempdir gustu10m,gustv10m=mdgcal.other.wind_components(gust10m,gustdir10m) grid0 = meb.grid([map_extent[0]-5,map_extent[1]+5,0.1],[map_extent[2]-5,map_extent[3]+5,0.1]) td_grid=meb.interp_sg_cressman(td,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) gustu10m_grid=meb.interp_sg_cressman(gustu10m,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) gustv10m_grid=meb.interp_sg_cressman(gustv10m,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) div = mdgcal.divergence(gustu10m_grid, gustv10m_grid) td_grid.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;2米露点温度&amp;#039; td_grid.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;℃&amp;#039; # plot draw_theme_ne.draw_obs_wind_div_td(gustu10m, gustv10m, div, td_grid, map_extent=map_extent, **products_kwargs)</code></pre> <h1>10米风场+散度(填色)、温度(等值线)产品绘制</h1> <p>10米风场+散度(填色)、温度(等值线)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_obs_wind_div_tmp(u10m, v10m, div, tmp, map_extent=(60, 145, 15, 55),                      div_contourf_kwargs={}, tmp_contour_kwargs={}, uv_barbs_kwargs={},                      **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">u10m</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">地面10米U风</td> </tr> <tr> <td style="text-align: left;">v10m</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">地面10米V风</td> </tr> <tr> <td style="text-align: left;">div</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">散度</td> </tr> <tr> <td style="text-align: left;">tmp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">温度</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">div_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">tmp_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">uv_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_obs_stations from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal import metdig.utl as mdgstda import meteva.base as meb # get area map_extent = get_map_area(area) tmp = get_obs_stations(obs_time=obs_time,data_name=data_name,var_name=&amp;#039;tmp&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() tmp[&amp;#039;sfc_chn_hor&amp;#039;].loc[tmp[&amp;#039;sfc_chn_hor&amp;#039;]&amp;gt;20]==np.nan # tmp[f&amp;#039;{data_name}&amp;#039;].loc[tmp[f&amp;#039;{data_name}&amp;#039;]&amp;gt;20]==np.nan temp = get_obs_stations(obs_time=obs_time,data_name=data_name,var_name=&amp;#039;gust10m&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() tempdir = get_obs_stations(obs_time=obs_time,data_name=data_name,var_name=&amp;#039;gustdir10m&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() temp=temp.where(temp[&amp;#039;id&amp;#039;].isin(list(set(temp[&amp;#039;id&amp;#039;]).intersection(tempdir[&amp;#039;id&amp;#039;])))).dropna().sort_values(&amp;#039;lon&amp;#039;).reset_index(drop=True) tempdir=tempdir.where(tempdir[&amp;#039;id&amp;#039;].isin(list(set(tempdir[&amp;#039;id&amp;#039;]).intersection(temp[&amp;#039;id&amp;#039;])))).dropna().sort_values(&amp;#039;lon&amp;#039;).reset_index(drop=True) gust10m=temp gustdir10m=tempdir gustu10m,gustv10m=mdgcal.other.wind_components(gust10m,gustdir10m) grid0 = meb.grid([map_extent[0]-5,map_extent[1]+5,0.1],[map_extent[2]-5,map_extent[3]+5,0.1]) tmp_grid=meb.interp_sg_cressman(tmp,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) gustu10m_grid=meb.interp_sg_cressman(gustu10m,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) gustv10m_grid=meb.interp_sg_cressman(gustv10m,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) div = mdgcal.divergence(gustu10m_grid, gustv10m_grid) tmp_grid.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;温度&amp;#039; tmp_grid.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;℃&amp;#039; # plot draw_theme_ne.draw_obs_wind_div_tmp(gustu10m, gustv10m, div, tmp_grid, map_extent=map_extent, **products_kwargs)</code></pre> <h1>10米风场、风速(蓝线)+散度(填色),2米气温的1小时变温(等值线)产品绘制</h1> <p>10米风场、风速(蓝线)+散度(填色),2米气温的1小时变温(等值线)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_obs_wind_wsp_div_dtmp(u10m, v10m, wsp, div, dtmp, map_extent=(60, 145, 15, 55),                            div_contourf_kwargs={}, dtmp_contour_kwargs={}, wsp_contour_kwargs={}, uv_barbs_kwargs={},                            **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">u10m</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">地面10米U风</td> </tr> <tr> <td style="text-align: left;">v10m</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">地面10米V风</td> </tr> <tr> <td style="text-align: left;">wsp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">风速</td> </tr> <tr> <td style="text-align: left;">div</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">散度</td> </tr> <tr> <td style="text-align: left;">dtmp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">温度变温</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">div_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">dtmp_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wsp_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">uv_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_obs_stations from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal import metdig.utl as mdgstda import meteva.base as meb # get area map_extent = get_map_area(area) tmp1 = get_obs_stations(obs_time=obs_time,data_name=data_name,var_name=&amp;#039;tmp&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() obs_time0 = obs_time-datetime.timedelta(hours=1) tmp0 = get_obs_stations(obs_time=obs_time0,data_name=data_name,var_name=&amp;#039;tmp&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() temp = get_obs_stations(obs_time=obs_time,data_name=data_name,var_name=&amp;#039;gust10m&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() tempdir = get_obs_stations(obs_time=obs_time,data_name=data_name,var_name=&amp;#039;gustdir10m&amp;#039;,data_source=data_source,extent=map_extent,is_save_other_info=None).dropna() temp=temp.where(temp[&amp;#039;id&amp;#039;].isin(list(set(temp[&amp;#039;id&amp;#039;]).intersection(tempdir[&amp;#039;id&amp;#039;])))).dropna().sort_values(&amp;#039;lon&amp;#039;).reset_index(drop=True) tempdir=tempdir.where(tempdir[&amp;#039;id&amp;#039;].isin(list(set(tempdir[&amp;#039;id&amp;#039;]).intersection(temp[&amp;#039;id&amp;#039;])))).dropna().sort_values(&amp;#039;lon&amp;#039;).reset_index(drop=True) gust10m=temp gustdir10m=tempdir gustu10m,gustv10m=mdgcal.other.wind_components(gust10m,gustdir10m) grid0 = meb.grid([map_extent[0]-5,map_extent[1]+5,0.1],[map_extent[2]-5,map_extent[3]+5,0.1]) tmp1_grid=meb.interp_sg_cressman(tmp1,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) tmp0_grid=meb.interp_sg_cressman(tmp0,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) dtmp_grid=tmp1_grid.isel(member=0,level=0,time=0,dtime=0)-tmp0_grid.isel(member=0,level=0,time=0,dtime=0) gustu10m_grid=meb.interp_sg_cressman(gustu10m,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) gustv10m_grid=meb.interp_sg_cressman(gustv10m,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) div = mdgcal.divergence(gustu10m_grid, gustv10m_grid) gust10m_grid=meb.interp_sg_cressman(gust10m,grid = grid0,r_list = [1000,200,100,50],nearNum = 100) dtmp_grid.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;1小时变温&amp;#039; dtmp_grid.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;℃&amp;#039; # plot draw_theme_ne.draw_obs_wind_wsp_div_dtmp(gustu10m, gustv10m, gust10m_grid, div, dtmp_grid, map_extent=map_extent, **products_kwargs)</code></pre> <h1>24小时降水产品绘制</h1> <p>24小时降水产品绘制代码示例如下:</p> <pre><code class="language-python">draw_obs_rain24(rain, map_extent=(60, 145, 15, 55),add_extrema=True,clip_area=None,                 rain_contourf_kwargs={}, extrema_text_kwargs={},                 **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">rain</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">降水</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">rain_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">extrema_text_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中text函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.onestep.complexgrid_var.get_rain import read_rain from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim # get area map_extent = get_map_area(area) rain = read_rain(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                           atime=atime, extent=map_extent) rain=rain.rolling(lon=1, lat=1, min_periods=1, center=True).mean(skipna=True) # plot draw_theme_ne.draw_obs_rain24(rain, map_extent=map_extent, **products_kwargs)</code></pre> <h1>海平面气压(黑线),24小时变压(填色)产品绘制</h1> <p>海平面气压(黑线),24小时变压(填色)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_prmsl_dprmsl24(prmsl, dprmsl24, map_extent=(60, 145, 15, 55),                     dprmsl24_contourf_kwargs={}, prmsl_contour_kwargs={},                     **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">prmsl</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">海平面气压</td> </tr> <tr> <td style="text-align: left;">dprmsl24</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">海平面气压24小时变压</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">dprmsl24_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">prmsl_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim # get data map_extent = get_map_area(area) prmsl = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;prmsl&amp;#039;, extent=map_extent) init_time0 = init_time+datetime.timedelta(days=-1) prmsl0 = get_model_grid(data_source=data_source, init_time=init_time0, fhour=fhour, data_name=data_name, var_name=&amp;#039;prmsl&amp;#039;, extent=map_extent) dprmsl24=prmsl.isel(member=0,level=0,time=0,dtime=0)-prmsl0.isel(member=0,level=0,time=0,dtime=0) dprmsl24.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;24小时变压&amp;#039; dprmsl24.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;hPa&amp;#039; # plot draw_theme_ne.draw_prmsl_dprmsl24(prmsl, dprmsl24, map_extent=map_extent, **products_kwargs)</code></pre> <h1>位势高度场 当前时次分析场(实线),24小时前预报(虚线)、预报偏差(填色)产品绘制</h1> <p>位势高度场 当前时次分析场(实线),24小时前预报(虚线)、预报偏差(填色)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_hgt_ana_fcst_bias(hgt_a, hgt_f, hgt_b, map_extent=(60, 145, 15, 55),                       hgt_a_contour_kwargs={}, hgt_f_contour_kwargs={}, hgt_b_contourf_kwargs={},                       **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">hgt_a</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">位势高度分析场</td> </tr> <tr> <td style="text-align: left;">hgt_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">位势高度预报场</td> </tr> <tr> <td style="text-align: left;">hgt_b</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">位势高度预报偏差</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">hgt_a_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">hgt_f_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">hgt_b_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim # get data map_extent = get_map_area(area) hgt_a = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;hgt&amp;#039;, level=hgt_lev, extent=map_extent) fhour0=24 init_time0 = init_time-datetime.timedelta(hours=fhour0) hgt_f = get_model_grid(data_source=data_source, init_time=init_time0, fhour=fhour0, data_name=data_name, var_name=&amp;#039;hgt&amp;#039;, level=hgt_lev, extent=map_extent) hgt_b=hgt_f.isel(member=0,level=0,time=0,dtime=0)-hgt_a.isel(member=0,level=0,time=0,dtime=0) hgt_b.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;24小时预报偏差&amp;#039; hgt_b.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;dagpm&amp;#039; # plot draw_theme_ne.draw_hgt_ana_fcst_bias(hgt_a, hgt_f, hgt_b, map_extent=map_extent, **products_kwargs)</code></pre> <h1>风场 当前时次分析场(黑色),24小时前预报(红色)、风速预报偏差(填色)产品绘制</h1> <p>风场 当前时次分析场(黑色),24小时前预报(红色)、风速预报偏差(填色)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_wsp_ana_fcst_bias(u_a, v_a, u_f, v_f, wsp_a, wsp_f, wsp_b, map_extent=(60, 145, 15, 55),                       uv_a_barbs_kwargs={}, uv_f_barbs_kwargs={},                       wsp_a_contour_kwargs={}, wsp_f_contour_kwargs={},                       wsp_b_contourf_kwargs={}, **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">u_a</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">分析场U风</td> </tr> <tr> <td style="text-align: left;">v_a</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">分析场V风</td> </tr> <tr> <td style="text-align: left;">u_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">预报场U风</td> </tr> <tr> <td style="text-align: left;">v_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">预报场V风</td> </tr> <tr> <td style="text-align: left;">wsp_a</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">分析场风速</td> </tr> <tr> <td style="text-align: left;">wsp_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">预报场风速</td> </tr> <tr> <td style="text-align: left;">wsp_b</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">风速预报偏差</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">uv_a_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">uv_f_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wsp_a_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wsp_f_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wsp_b_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal # get data map_extent = get_map_area(area) u_a = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;u&amp;#039;, level=uv_lev, extent=map_extent) v_a = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;v&amp;#039;, level=uv_lev, extent=map_extent) fhour0=24 init_time0 = init_time-datetime.timedelta(hours=fhour0) u_f = get_model_grid(data_source=data_source, init_time=init_time0, fhour=fhour0, data_name=data_name, var_name=&amp;#039;u&amp;#039;, level=uv_lev, extent=map_extent) v_f = get_model_grid(data_source=data_source, init_time=init_time0, fhour=fhour0, data_name=data_name, var_name=&amp;#039;v&amp;#039;, level=uv_lev, extent=map_extent) wsp_a = mdgcal.wind_speed(u_a, v_a) wsp_f = mdgcal.wind_speed(u_f, v_f) wsp_b=wsp_f.isel(member=0,level=0,time=0,dtime=0)-wsp_a.isel(member=0,level=0,time=0,dtime=0) wsp_b.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;风速预报偏差&amp;#039; wsp_b.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;m/s&amp;#039; # plot draw_theme_ne.draw_wsp_ana_fcst_bias(u_a, v_a, u_f, v_f, wsp_a, wsp_f, wsp_b, map_extent=map_extent, **products_kwargs)</code></pre> <h1>海平面气压场 当前时次分析场(实线),24小时前预报(虚线)、预报偏差(填色)产品绘制</h1> <p>海平面气压场 当前时次分析场(实线),24小时前预报(虚线)、预报偏差(填色)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_prmsl_ana_fcst_bias(prmsl_a, prmsl_f, prmsl_b, map_extent=(60, 145, 15, 55),                       prmsl_a_contour_kwargs={}, prmsl_f_contour_kwargs={}, prmsl_b_contourf_kwargs={},                       **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">prmsl_a</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">海平面气压分析场</td> </tr> <tr> <td style="text-align: left;">prmsl_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">海平面气压预报场</td> </tr> <tr> <td style="text-align: left;">prmsl_b</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">海平面气压预报偏差</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">prmsl_a_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">prmsl_f_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">prmsl_b_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim # get data map_extent = get_map_area(area) prmsl_a = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;prmsl&amp;#039;, extent=map_extent) fhour0=24 init_time0 = init_time-datetime.timedelta(hours=fhour0) prmsl_f = get_model_grid(data_source=data_source, init_time=init_time0, fhour=fhour0, data_name=data_name, var_name=&amp;#039;prmsl&amp;#039;, extent=map_extent) prmsl_b=prmsl_f.isel(member=0,level=0,time=0,dtime=0)-prmsl_a.isel(member=0,level=0,time=0,dtime=0) prmsl_b.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;海平面气压预报偏差&amp;#039; prmsl_b.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;hPa&amp;#039; # plot draw_theme_ne.draw_prmsl_ana_fcst_bias(prmsl_a, prmsl_f, prmsl_b, map_extent=map_extent, **products_kwargs)</code></pre> <h1>位势高度, 水汽通量产品绘制</h1> <p>位势高度, 水汽通量产品绘制代码示例如下:</p> <pre><code class="language-python">draw_hgt_ivt(hgt, ivtu, ivtv, ivt, map_extent=(60, 145, 15, 55),              ivt_pcolormesh_kwargs={}, ivtuv_quiver_kwargs={}, hgt_contour_kwargs={},              **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">hgt</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">位势高度</td> </tr> <tr> <td style="text-align: left;">ivtu</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">U风</td> </tr> <tr> <td style="text-align: left;">ivtv</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">V风</td> </tr> <tr> <td style="text-align: left;">ivt</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">水汽通量</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">ivt_pcolormesh_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中pcolormesh函数的可变参数</td> </tr> <tr> <td style="text-align: left;">ivtuv_quiver_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中quiver函数的可变参数</td> </tr> <tr> <td style="text-align: left;">hgt_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal # get data map_extent = get_map_area(area) hgt = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;hgt&amp;#039;, level=hgt_lev, extent=map_extent) u = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;u&amp;#039;, level=ivt_lev, extent=map_extent) v = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;v&amp;#039;, level=ivt_lev, extent=map_extent) spfh = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;spfh&amp;#039;, level=ivt_lev, extent=map_extent) wsp = mdgcal.other.wind_speed(u, v) ivt = mdgcal.moisture.cal_ivt_singlelevel(spfh, wsp) ivtu = mdgcal.moisture.cal_ivt_singlelevel(spfh, u) ivtv = mdgcal.moisture.cal_ivt_singlelevel(spfh, v) # plot draw_theme_ne.draw_hgt_ivt(hgt, ivtu, ivtv, ivt, map_extent=map_extent, **products_kwargs)</code></pre> <h1>水汽通量散度(等值线), 整层可降水量(填色)产品绘制</h1> <p>水汽通量散度(等值线), 整层可降水量(填色)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_wvfldiv_tcwv(wvfldiv, tcwv, map_extent=(60, 145, 15, 55),                   tcwv_pcolormesh_kwargs={}, wvfldiv_contour_kwargs={},                   **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">wvfldiv</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">水汽通量散度</td> </tr> <tr> <td style="text-align: left;">tcwv</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">整层可降水量</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">tcwv_pcolormesh_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中pcolormesh函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wvfldiv_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal from metdig.onestep.complexgrid_var.spfh import read_spfh # get data map_extent = get_map_area(area) tcwv = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;tcwv&amp;#039;, extent=map_extent) # 水汽通量散度 u = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;u&amp;#039;, level=wvfldiv_lev, extent=map_extent) v = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;v&amp;#039;, level=wvfldiv_lev, extent=map_extent) spfh = read_spfh(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, level=wvfldiv_lev, extent=map_extent) smt_stp=1 u = mdgcal.gaussian_filter(u, smt_stp) v = mdgcal.gaussian_filter(v, smt_stp) spfh = mdgcal.gaussian_filter(spfh, smt_stp) wvfldiv=mdgcal.water_wapor_flux_divergence(u,v,spfh) wvfldiv=wvfldiv * 1e5 # plot draw_theme_ne.draw_wvfldiv_tcwv(wvfldiv, tcwv, map_extent=map_extent, **products_kwargs)</code></pre> <h1>散度(等值线), 整层可降水量(填色)产品绘制</h1> <p>散度(等值线), 整层可降水量(填色)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_div_tcwv(div, tcwv, map_extent=(60, 145, 15, 55),              tcwv_pcolormesh_kwargs={}, div_contour_kwargs={},              **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">div</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">散度</td> </tr> <tr> <td style="text-align: left;">tcwv</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">整层可降水量</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">tcwv_pcolormesh_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中pcolormesh函数的可变参数</td> </tr> <tr> <td style="text-align: left;">div_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal from metdig.onestep.complexgrid_var.div_uv import read_div_uv,read_div_uv_3d # get data map_extent = get_map_area(area) tcwv = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;tcwv&amp;#039;, extent=map_extent) # 散度 smth_stp=5 div, u, v = read_div_uv(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, level=div_lev, extent=map_extent) div_attrs = div.attrs div = div.rolling(lon=smth_stp, lat=smth_stp, min_periods=1, center=True).mean() div.attrs = div_attrs # plot draw_theme_ne.draw_div_tcwv(div, tcwv, map_extent=map_extent, **products_kwargs)</code></pre> <h1>风,水平散度产品绘制</h1> <p>风,水平散度产品绘制代码示例如下:</p> <pre><code class="language-python">draw_wsp_uv_div(wsp, u, v, div, map_extent=(60, 145, 15, 55),                 div_contourf_kwargs={}, uv_barbs_kwargs={}, wsp_contour_kwargs={},                 **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">wsp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">风速</td> </tr> <tr> <td style="text-align: left;">u</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">U风</td> </tr> <tr> <td style="text-align: left;">v</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">V风</td> </tr> <tr> <td style="text-align: left;">div</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">散度</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">div_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">uv_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wsp_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal # get data map_extent = get_map_area(area) u = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;u&amp;#039;, level=uv_lev, extent=map_extent) v = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;v&amp;#039;, level=uv_lev, extent=map_extent) wsp = mdgcal.wind_speed(u, v) div = mdgcal.divergence(u, v) # plot draw_theme_ne.draw_wsp_uv_div(wsp, u, v, div, map_extent=map_extent, **products_kwargs)</code></pre> <h1>锋生函数, 风场,假相当位温产品绘制</h1> <p>锋生函数, 风场,假相当位温产品绘制代码示例如下:</p> <pre><code class="language-python">draw_uv_fg_thta(u, v, fg, thta, map_extent=(60, 145, 15, 55),                 thta_contour_kwargs={}, uv_barbs_kwargs={}, fg_pcolormesh_kwargs={},                 **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">u</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">U风</td> </tr> <tr> <td style="text-align: left;">v</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">V风</td> </tr> <tr> <td style="text-align: left;">fg</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">锋生函数</td> </tr> <tr> <td style="text-align: left;">thta</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">假相当位温</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">thta_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">uv_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">fg_pcolormesh_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中pcolormesh函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim from metdig.onestep.complexgrid_var.theta import read_theta import metdig.cal as mdgcal import metdig.utl as mdgstda # get data map_extent = get_map_area(area) u = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;u&amp;#039;, level=fg_lev, extent=map_extent) v = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;v&amp;#039;, level=fg_lev, extent=map_extent) theta=read_theta(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, level=fg_lev, extent=map_extent) tmp = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;tmp&amp;#039;, level=fg_lev, extent=map_extent) pres = mdgstda.gridstda_full_like(tmp, fg_lev, var_name=&amp;#039;pres&amp;#039;) thta = mdgcal.potential_temperature(pres, tmp) fg=mdgcal.frontogenesis(thta.rolling(lon=smth_stp, lat=smth_stp, min_periods=1, center=True).mean(skipna=True),                         u.rolling(lon=smth_stp, lat=smth_stp, min_periods=1, center=True).mean(skipna=True),                         v.rolling(lon=smth_stp, lat=smth_stp, min_periods=1, center=True).mean(skipna=True)) # plot draw_theme_ne.draw_uv_fg_thta(u, v, thta, fg, map_extent=map_extent, **products_kwargs)</code></pre> <h1>K指数产品绘制</h1> <p>K指数产品绘制代码示例如下:</p> <pre><code class="language-python">draw_K_idx(T850, K_idx, map_extent=(60, 145, 15, 55), K_pcolormesh_kwargs={}, **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">T850</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">850hPa温度</td> </tr> <tr> <td style="text-align: left;">K_idx</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">K指数</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">K_pcolormesh_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中pcolormesh函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal # get data map_extent = get_map_area(area) T850 = get_model_grid(data_source=data_source, data_name=data_name, var_name=&amp;#039;tmp&amp;#039;, init_time=init_time, fhour=fhour, level=850, extent=map_extent) T500 = get_model_grid(data_source=data_source, data_name=data_name, var_name=&amp;#039;tmp&amp;#039;, init_time=init_time, fhour=fhour, level=500, extent=map_extent) T700 = get_model_grid(data_source=data_source, data_name=data_name, var_name=&amp;#039;tmp&amp;#039;, init_time=init_time, fhour=fhour, level=700, extent=map_extent) rh850 = get_model_grid(data_source=data_source, data_name=data_name, var_name=&amp;#039;rh&amp;#039;, init_time=init_time, fhour=fhour, level=850, extent=map_extent) rh700 = get_model_grid(data_source=data_source, data_name=data_name, var_name=&amp;#039;rh&amp;#039;, init_time=init_time, fhour=fhour, level=700, extent=map_extent) Td850 = mdgcal.moisture.dewpoint_from_relative_humidity(T850, rh850) Td700 = mdgcal.moisture.dewpoint_from_relative_humidity(T700, rh700) K_idx=(T850.isel(member=0,level=0,time=0,dtime=0)-T500.isel(member=0,level=0,time=0,dtime=0))+Td850.isel(member=0,level=0,time=0,dtime=0)-(T700.isel(member=0,level=0,time=0,dtime=0)-Td700.isel(member=0,level=0,time=0,dtime=0)) # plot draw_theme_ne.draw_K_idx(T850, K_idx, map_extent=map_extent, **products_kwargs)</code></pre> <h1>对流有效位能产品绘制</h1> <p>对流有效位能产品绘制代码示例如下:</p> <pre><code class="language-python">draw_cape(cape, map_extent=(60, 145, 15, 55), cape_pcolormesh_kwargs={}, **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">cape</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">对流有效位能</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">cape_pcolormesh_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中pcolormesh函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim # get data map_extent = get_map_area(area) cape = get_model_grid(data_source=data_source, data_name=data_name, var_name=&amp;#039;cape&amp;#039;, init_time=init_time, fhour=fhour, extent=map_extent) # plot draw_theme_ne.draw_cape(cape, map_extent=map_extent, **products_kwargs)</code></pre> <h1>锋生函数(蓝线), 相当位温(红线),湿位涡(填色)产品绘制</h1> <p>锋生函数(蓝线), 相当位温(红线),湿位涡(填色)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_cross_theta_fg_mpv(cross_theta, cross_fg, cross_mpv, cross_terrain, hgt,                       st_point=None, ed_point=None, map_extent=(50, 150, 0, 65),                       h_pos=None,                       mpv_contourf_kwargs={}, fg_contourf_kwargs={}, theta_contour_kwargs={}, terrain_contourf_kwargs={},                       **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">cross_theta</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">相当位温</td> </tr> <tr> <td style="text-align: left;">cross_fg</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">锋生函数</td> </tr> <tr> <td style="text-align: left;">cross_mpv</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">湿位涡</td> </tr> <tr> <td style="text-align: left;">cross_terrain</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">地形</td> </tr> <tr> <td style="text-align: left;">hgt</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">位势高度</td> </tr> <tr> <td style="text-align: left;">st_point</td> <td style="text-align: left;">否</td> <td style="text-align: left;">None</td> <td style="text-align: left;">起始点经纬度</td> </tr> <tr> <td style="text-align: left;">ed_point</td> <td style="text-align: left;">否</td> <td style="text-align: left;">None</td> <td style="text-align: left;">结束点经纬度</td> </tr> <tr> <td style="text-align: left;">h_pos</td> <td style="text-align: left;">否</td> <td style="text-align: left;">None</td> <td style="text-align: left;">小图区域</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">mpv_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">fg_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">theta_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">terrain_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.io import get_model_3D_grid from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim from metdig.products import diag_theme_ne as draw_theme_ne import metdig.cal as mdgcal import metdig.utl as mdgstda # points to 一维 st_point = point_to1dim(st_point) ed_point = point_to1dim(ed_point) # 以st_point和ed_point包含的小区域 minor_extent, map_extent = cross_extent(st_point, ed_point, area) rh = get_model_3D_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                            var_name=&amp;#039;rh&amp;#039;, levels=levels, extent=minor_extent) u = get_model_3D_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                           var_name=&amp;#039;u&amp;#039;, levels=levels, extent=minor_extent) v = get_model_3D_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                           var_name=&amp;#039;v&amp;#039;, levels=levels, extent=minor_extent) tmp = get_model_3D_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                             var_name=&amp;#039;tmp&amp;#039;, levels=levels, extent=minor_extent) hgt = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                          var_name=&amp;#039;hgt&amp;#039;, level=500, extent=map_extent) theta = read_theta3d(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, levels=levels, extent=minor_extent) pres = mdgstda.gridstda_full_like_by_levels(u, levels) mpv = mdgcal.potential_vorticity_baroclinic(theta, pres, u, v) pressure_3d = mdgstda.gridstda_full_like_by_levels(tmp, tmp[&amp;#039;level&amp;#039;].values) thta=mdgcal.thermal.potential_temperature(pressure_3d,tmp) fg=mdgcal.dynamic.frontogenesis(thta,u,v) res=rh.stda.horizontal_resolution if(lon_mean is not None):     pnts_mean_lon=int(round(lon_mean/res)) else:     pnts_mean_lon=1 if(lat_mean is not None):     pnts_mean_lat=int(round(lat_mean/res)) else:     pnts_mean_lat=1 rh=rh.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() tmp=tmp.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() thta=thta.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() mpv=mpv.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() fg=fg.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() cross_mpv = mdgcal.cross_section(mpv, st_point, ed_point)     cross_fg = mdgcal.cross_section(fg, st_point, ed_point) cross_tmp = mdgcal.cross_section(tmp, st_point, ed_point) cross_rh = mdgcal.cross_section(rh, st_point, ed_point) cross_thta = mdgcal.cross_section(thta, st_point, ed_point) cross_td = mdgcal.dewpoint_from_relative_humidity(cross_tmp, cross_rh) pressure = mdgstda.gridstda_full_like_by_levels(cross_rh, cross_tmp[&amp;#039;level&amp;#039;].values) cross_theta = mdgcal.equivalent_potential_temperature(pressure, cross_thta, cross_td) # plot draw_theme_ne.draw_cross_theta_fg_mpv(cross_theta, cross_fg, cross_mpv, cross_terrain, hgt,                                                   st_point=st_point, ed_point=ed_point,                                                   map_extent=minor_extent, h_pos=h_pos,                                                   **products_kwargs)</code></pre> <h1>水平散度(黑线),水平风,风速(蓝线)产品绘制</h1> <p>水平散度(黑线),水平风,风速(蓝线)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_cross_div_uv_wsp(cross_div, cross_wsp, cross_u, cross_v, cross_terrain, prmsl,                     st_point=None, ed_point=None, map_extent=(50, 150, 0, 65),                     h_pos=None,                     div_contourf_kwargs={}, wsp_contour_kwargs={}, uv_barbs_kwargs={},terrain_contourf_kwargs={},                     **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">cross_div</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">散度</td> </tr> <tr> <td style="text-align: left;">cross_wsp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">风速</td> </tr> <tr> <td style="text-align: left;">cross_u</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">U风</td> </tr> <tr> <td style="text-align: left;">cross_v</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">V风</td> </tr> <tr> <td style="text-align: left;">cross_terrain</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">地形</td> </tr> <tr> <td style="text-align: left;">prmsl</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">海平面气压</td> </tr> <tr> <td style="text-align: left;">st_point</td> <td style="text-align: left;">否</td> <td style="text-align: left;">None</td> <td style="text-align: left;">起始点经纬度</td> </tr> <tr> <td style="text-align: left;">ed_point</td> <td style="text-align: left;">否</td> <td style="text-align: left;">None</td> <td style="text-align: left;">结束点经纬度</td> </tr> <tr> <td style="text-align: left;">h_pos</td> <td style="text-align: left;">否</td> <td style="text-align: left;">None</td> <td style="text-align: left;">小图区域</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">div_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wsp_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">uv_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">terrain_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.onestep.complexgrid_var.div_uv import read_div_uv,read_div_uv_3d from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim from metdig.products import diag_theme_ne as draw_theme_ne import metdig.cal as mdgcal import metdig.utl as mdgstda # points to 一维 st_point = point_to1dim(st_point) ed_point = point_to1dim(ed_point) # 以st_point和ed_point包含的小区域 minor_extent, map_extent = cross_extent(st_point, ed_point, area) div,u,v = read_div_uv_3d(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, levels=levels, extent=minor_extent) prmsl = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;prmsl&amp;#039;, extent=map_extent) res=div.stda.horizontal_resolution if(lon_mean is not None):     pnts_mean_lon=int(round(lon_mean/res)) else:     pnts_mean_lon=1 if(lat_mean is not None):     pnts_mean_lat=int(round(lat_mean/res)) else:     pnts_mean_lat=1 div=div.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() u=u.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() v=v.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() wsp = mdgcal.other.wind_speed(u, v) cross_div = mdgcal.cross_section(div, st_point, ed_point) cross_u = mdgcal.cross_section(u, st_point, ed_point) cross_v = mdgcal.cross_section(v, st_point, ed_point) cross_wsp = mdgcal.cross_section(wsp, st_point, ed_point) pressure = mdgstda.gridstda_full_like_by_levels(cross_u, cross_u[&amp;#039;level&amp;#039;].values) # plot draw_theme_ne.draw_cross_div_uv_wsp(cross_div, cross_wsp, cross_u, cross_v, cross_terrain, prmsl,                                                 st_point=st_point, ed_point=ed_point,                                                 map_extent=minor_extent, h_pos=h_pos,                                                 **products_kwargs)</code></pre> <h1>温度(红线,℃), 垂直速度(蓝线,Pa/s),温度平流(填色), 沿剖垂直环流产品绘制</h1> <p>温度(红线,℃), 垂直速度(蓝线,Pa/s),温度平流(填色), 沿剖垂直环流产品绘制代码示例如下:</p> <pre><code class="language-python">draw_cross_wind_w_tmp_vvel_tmpadv(cross_tmpadv, cross_tmp, cross_t, cross_w, cross_vvel, cross_terrain, hgt,                            st_point=None, ed_point=None, map_extent=(50, 150, 0, 65),                            h_pos=None,                            tmpadv_contourf_kwargs={}, tmp_contour_kwargs={}, vvel_contour_kwargs={}, wind_quiver_kwargs={}, terrain_contourf_kwargs={},                            **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">cross_tmpadv</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">温度平流</td> </tr> <tr> <td style="text-align: left;">cross_tmp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">温度</td> </tr> <tr> <td style="text-align: left;">cross_t</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">水平方向速度</td> </tr> <tr> <td style="text-align: left;">cross_w</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">垂直方向速度</td> </tr> <tr> <td style="text-align: left;">cross_vvel</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">垂直气压速度</td> </tr> <tr> <td style="text-align: left;">cross_terrain</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">地形</td> </tr> <tr> <td style="text-align: left;">hgt</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">位势高度</td> </tr> <tr> <td style="text-align: left;">st_point</td> <td style="text-align: left;">否</td> <td style="text-align: left;">None</td> <td style="text-align: left;">起始点经纬度</td> </tr> <tr> <td style="text-align: left;">ed_point</td> <td style="text-align: left;">否</td> <td style="text-align: left;">None</td> <td style="text-align: left;">结束点经纬度</td> </tr> <tr> <td style="text-align: left;">h_pos</td> <td style="text-align: left;">否</td> <td style="text-align: left;">None</td> <td style="text-align: left;">小图区域</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">tmpadv_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">tmp_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">vvel_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wind_quiver_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中quiver函数的可变参数</td> </tr> <tr> <td style="text-align: left;">terrain_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.io import get_model_3D_grid from metdig.onestep.complexgrid_var.w import read_w3d from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim from metdig.products import diag_theme_ne as draw_theme_ne import metdig.cal as mdgcal import metdig.utl as mdgstda # points to 一维 st_point = point_to1dim(st_point) ed_point = point_to1dim(ed_point) # 以st_point和ed_point包含的小区域 minor_extent, map_extent = cross_extent(st_point, ed_point, area) u = get_model_3D_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                           var_name=&amp;#039;u&amp;#039;, levels=levels, extent=minor_extent) v = get_model_3D_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                           var_name=&amp;#039;v&amp;#039;, levels=levels, extent=minor_extent) w=read_w3d(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, levels=levels, extent=minor_extent) tmp = get_model_3D_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                             var_name=&amp;#039;tmp&amp;#039;, levels=levels, extent=minor_extent) vvel = get_model_3D_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                              var_name=&amp;#039;vvel&amp;#039;, levels=levels, extent=minor_extent) hgt = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name,                          var_name=&amp;#039;hgt&amp;#039;, level=500, extent=map_extent) res=w.stda.horizontal_resolution if(lon_mean is not None):     pnts_mean_lon=int(round(lon_mean/res)) else:     pnts_mean_lon=1 if(lat_mean is not None):     pnts_mean_lat=int(round(lat_mean/res)) else:     pnts_mean_lat=1 u=u.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() v=v.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() w=w.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() tmp=tmp.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean()     vvel=vvel.rolling(lon=pnts_mean_lon, lat=pnts_mean_lat, min_periods=1, center=True).mean() tmpadv = mdgcal.var_advect(tmp, u, v) cross_u = mdgcal.cross_section(u, st_point, ed_point) cross_v = mdgcal.cross_section(v, st_point, ed_point) cross_w = mdgcal.cross_section(w, st_point, ed_point) cross_t, cross_n = mdgcal.cross_section_components(cross_u, cross_v) cross_tmp = mdgcal.cross_section(tmp, st_point, ed_point) cross_vvel = mdgcal.cross_section(vvel, st_point, ed_point) cross_tmpadv = mdgcal.cross_section(tmpadv, st_point, ed_point) pressure = mdgstda.gridstda_full_like_by_levels(cross_tmp, cross_tmp[&amp;#039;level&amp;#039;].values) # plot draw_theme_ne.draw_cross_wind_w_tmp_vvel_tmpadv(cross_tmpadv, cross_tmp, cross_t, cross_w, cross_vvel, cross_terrain, hgt,                                                             st_point=st_point, ed_point=ed_point,                                                             map_extent=minor_extent, h_pos=h_pos,                                                             **products_kwargs)</code></pre> <h1>位势高度场 当前时次预报(实线),24小时前预报(虚线),预报调整(填色)产品绘制</h1> <p>位势高度场 当前时次预报(实线),24小时前预报(虚线),预报调整(填色)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_hgt_fcst_change(hgt_f, hgt_fp, hgt_chg, map_extent=(60, 145, 15, 55),                       hgt_f_contour_kwargs={}, hgt_fp_contour_kwargs={}, hgt_chg_contourf_kwargs={},                       **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">hgt_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">位势高度当前预报</td> </tr> <tr> <td style="text-align: left;">hgt_fp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">位势高度上次预报</td> </tr> <tr> <td style="text-align: left;">hgt_chg</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">位势高度预报调整</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">hgt_f_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">hgt_fp_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">hgt_chg_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim # get data map_extent = get_map_area(area) hgt_f = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;hgt&amp;#039;, level=hgt_lev, extent=map_extent) init_time0 = init_time-datetime.timedelta(days=1) fhour0 = fhour+24 hgt_fp = get_model_grid(data_source=data_source, init_time=init_time0, fhour=fhour0, data_name=data_name, var_name=&amp;#039;hgt&amp;#039;, level=hgt_lev, extent=map_extent) hgt_chg=hgt_f.isel(member=0,level=0,time=0,dtime=0)-hgt_fp.isel(member=0,level=0,time=0,dtime=0) hgt_chg.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;24小时变高&amp;#039; hgt_chg.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;dagpm&amp;#039; # plot draw_theme_ne.draw_hgt_fcst_change(hgt_f, hgt_fp, hgt_chg, map_extent=map_extent, **products_kwargs)</code></pre> <h1>当前时次预报及低空急流(黑色),48小时前低空急流(蓝色)、经向风速预报调整</h1> <p>当前时次预报及低空急流(黑色),48小时前低空急流(蓝色)、经向风速预报调整产品绘制代码示例如下:</p> <pre><code class="language-python">draw_wind_fcst_change(wsp_f, wsp_fp, wsp_chg, u_f, v_f, u_fp, v_fp, map_extent=(60, 145, 15, 55),                       wsp_f_contour_kwargs={}, wsp_fp_contour_kwargs={}, wsp_chg_contourf_kwargs={}, uv_f_barbs_kwargs={}, uv_fp_barbs_kwargs={},                       **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">wsp_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">风速当前预报</td> </tr> <tr> <td style="text-align: left;">wsp_fp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">风速上次预报</td> </tr> <tr> <td style="text-align: left;">wsp_chg</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">风速预报调整</td> </tr> <tr> <td style="text-align: left;">u_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">U风当前预报</td> </tr> <tr> <td style="text-align: left;">v_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">V风当前预报</td> </tr> <tr> <td style="text-align: left;">u_fp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">U风上次预报</td> </tr> <tr> <td style="text-align: left;">v_fp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">V风上次预报</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">wsp_f_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wsp_fp_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">wsp_chg_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">uv_f_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">uv_fp_barbs_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中barbs函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim import metdig.cal as mdgcal # get data map_extent = get_map_area(area) u_f = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;u&amp;#039;, level=wind_lev, extent=map_extent) v_f = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;v&amp;#039;, level=wind_lev, extent=map_extent) init_time0 = init_time-datetime.timedelta(days=1) fhour0 = fhour+24 u_fp = get_model_grid(data_source=data_source, init_time=init_time0, fhour=fhour0, data_name=data_name, var_name=&amp;#039;u&amp;#039;, level=wind_lev, extent=map_extent) v_fp = get_model_grid(data_source=data_source, init_time=init_time0, fhour=fhour0, data_name=data_name, var_name=&amp;#039;v&amp;#039;, level=wind_lev, extent=map_extent) wsp_f = mdgcal.wind_speed(u_f,v_f) wsp_fp = mdgcal.wind_speed(u_fp,v_fp) wsp_chg=wsp_f.isel(member=0,level=0,time=0,dtime=0)-wsp_fp.isel(member=0,level=0,time=0,dtime=0) wsp_chg.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;风速预报调整&amp;#039; wsp_chg.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;m/s&amp;#039; # plot draw_theme_ne.draw_wind_fcst_change(wsp_f, wsp_fp, wsp_chg, u_f, v_f, u_fp, v_fp, map_extent=map_extent, **products_kwargs)</code></pre> <h1>海平面气压场 当前时次预报(实线),24小时前预报(虚线),预报调整(填色)产品绘制</h1> <p>海平面气压场 当前时次预报(实线),24小时前预报(虚线),预报调整(填色)产品绘制代码示例如下:</p> <pre><code class="language-python">draw_prmsl_fcst_change(prmsl_f, prmsl_fp, prmsl_chg, map_extent=(60, 145, 15, 55),                       prmsl_f_contour_kwargs={}, prmsl_fp_contour_kwargs={}, prmsl_chg_contourf_kwargs={},                       **pallete_kwargs)</code></pre> <p>根据输入的数据,生成指定区域、指定图片样式的叠加产品并输出到指定目录。</p> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;参数说明&lt;/b&gt;&lt;/font&gt;</p> <table> <thead> <tr> <th style="text-align: left;">参数</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">默认</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">prmsl_f</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">海平面气压当前预报</td> </tr> <tr> <td style="text-align: left;">prmsl_fp</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">海平面气压上次预报</td> </tr> <tr> <td style="text-align: left;">prmsl_chg</td> <td style="text-align: left;">&lt;font color=&#039;red&#039;&gt;是&lt;/font&gt;</td> <td style="text-align: left;"></td> <td style="text-align: left;">海平面气压预报调整</td> </tr> <tr> <td style="text-align: left;">map_extent</td> <td style="text-align: left;">否</td> <td style="text-align: left;">(60, 145, 15, 55)</td> <td style="text-align: left;">绘图经纬度</td> </tr> <tr> <td style="text-align: left;">prmsl_f_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">prmsl_fp_contour_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contour函数的可变参数</td> </tr> <tr> <td style="text-align: left;">prmsl_chg_contourf_kwargs</td> <td style="text-align: left;">否</td> <td style="text-align: left;">{}</td> <td style="text-align: left;">matplotlib中contourf函数的可变参数</td> </tr> <tr> <td style="text-align: left;">其他参数<code>**pallete_kwargs</code></td> <td style="text-align: left;"></td> <td style="text-align: left;"></td> <td style="text-align: left;">详见[graphics层画板设置draw_compose](<a href="https://www.showdoc.com.cn/metdig/7407616276019947">https://www.showdoc.com.cn/metdig/7407616276019947</a> &quot;graphics层画板设置draw_compose&quot;)</td> </tr> </tbody> </table> <table> <thead> <tr> <th style="text-align: left;">返回值</th> <th style="text-align: left;">说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">ret</td> <td style="text-align: left;">图像字典</td> </tr> </tbody> </table> <p>&lt;font size=&quot;4&quot;&gt;&lt;b&gt;调用示例&lt;/b&gt;&lt;/font&gt;</p> <pre><code class="language-python">from metdig.io import get_model_grid from metdig.products import diag_theme_ne as draw_theme_ne from metdig.onestep.lib.utility import get_map_area, cross_extent, point_to1dim # get data map_extent = get_map_area(area) prmsl_f = get_model_grid(data_source=data_source, init_time=init_time, fhour=fhour, data_name=data_name, var_name=&amp;#039;prmsl&amp;#039;, extent=map_extent) init_time0 = init_time-datetime.timedelta(days=1) fhour0 = fhour+24 prmsl_fp = get_model_grid(data_source=data_source, init_time=init_time0, fhour=fhour0, data_name=data_name, var_name=&amp;#039;prmsl&amp;#039;, extent=map_extent) prmsl_chg=prmsl_f.isel(member=0,level=0,time=0,dtime=0)-prmsl_fp.isel(member=0,level=0,time=0,dtime=0) prmsl_chg.attrs[&amp;#039;var_cn_name&amp;#039;]=&amp;#039;24小时变压&amp;#039; prmsl_chg.attrs[&amp;#039;var_units&amp;#039;]=&amp;#039;hPa&amp;#039; # plot draw_theme_ne.draw_prmsl_fcst_change(prmsl_f, prmsl_fp, prmsl_chg, map_extent=map_extent, **products_kwargs)</code></pre>

页面列表

ITEM_HTML