多模式对比compare
<p>[TOC]</p>
<h1>多模式对比</h1>
<p>诊断分析产品多模式对比代码示例如下:</p>
<pre><code class="language-python">models_compare(init_time=None, fhour=24, data_names=['ecmwf', 'cma_gfs', 'ncep_gfs', 'cma_meso_3km'],
func=None, func_other_args={}, max_workers=6,
output_dir=None, show='tab', tab_size=(30, 18), list_size=(16, 9),
is_clean_plt=False)</code></pre>
<p>根据输入的起报时间、预报时效、模式列表、函数名(定制产品)、函数参数、最大进程数,生成指定的定制产品对比图并输出到指定目录。</p>
<p><font size="4"><b>参数说明</b></font></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>
<th style="text-align: left;">说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">init_time</td>
<td style="text-align: left;">datetime</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">None</td>
<td style="text-align: left;">起报时间</td>
</tr>
<tr>
<td style="text-align: left;">fhour</td>
<td style="text-align: left;">number</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">24</td>
<td style="text-align: left;">预报时效</td>
</tr>
<tr>
<td style="text-align: left;">data_names</td>
<td style="text-align: left;">list</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">['ecmwf', 'cma_gfs', 'ncep_gfs', 'cma_meso_3km']</td>
<td style="text-align: left;">多模式列表</td>
</tr>
<tr>
<td style="text-align: left;">func</td>
<td style="text-align: left;">function</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">None</td>
<td style="text-align: left;">函数名</td>
</tr>
<tr>
<td style="text-align: left;">func_other_args</td>
<td style="text-align: left;">dict</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">{}</td>
<td style="text-align: left;">函数参数字典</td>
</tr>
<tr>
<td style="text-align: left;">max_workers</td>
<td style="text-align: left;">number</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">6</td>
<td style="text-align: left;">最大进程数</td>
</tr>
<tr>
<td style="text-align: left;">output_dir</td>
<td style="text-align: left;">str</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">None</td>
<td style="text-align: left;">输出目录</td>
</tr>
<tr>
<td style="text-align: left;">show</td>
<td style="text-align: left;">str</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">tab</td>
<td style="text-align: left;">显示方式:<br/>'list', show all plots in one cell<br/>'tab', show one plot in each tab page</td>
</tr>
<tr>
<td style="text-align: left;">tab_size</td>
<td style="text-align: left;">tuple</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">(30, 18)</td>
<td style="text-align: left;">如果show='tab'时生效,输出图片分辨率</td>
</tr>
<tr>
<td style="text-align: left;">list_size</td>
<td style="text-align: left;">tuple</td>
<td style="text-align: left;"><font color='red'>是</font></td>
<td style="text-align: left;">(16, 9)</td>
<td style="text-align: left;">如果show='list'时生效,输出图片分辨率</td>
</tr>
<tr>
<td style="text-align: left;">is_clean_plt</td>
<td style="text-align: left;">str</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">False</td>
<td style="text-align: left;">清理plt资源</td>
</tr>
</tbody>
</table>
<p><em>注:</em></p>
<ol>
<li>
<p>数据源(data_source)及模式名(data_name)列表详见:<a href="https://www.showdoc.com.cn/metdig/7139572020318236" title="数据源及类型列表">数据源及类型列表</a></p>
</li>
<li>各数据源属性列表详见如下:
<ul>
<li>cassandra:<a href="https://www.showdoc.com.cn/metdig/5110392719553594" title="cassandra数据源属性列表">cassandra数据源属性列表</a></li>
<li>cmadaas:<a href="https://www.showdoc.com.cn/metdig/6386077756820471" title="cmadaas数据源属性列表">cmadaas数据源属性列表</a></li>
<li>era5:<a href="https://www.showdoc.com.cn/metdig/6060999066114040" title="era5数据源属性列表">era5数据源属性列表</a></li>
<li>thredds:<a href="https://www.showdoc.com.cn/metdig/7194537959773803" title="thredds数据源属性列表">thredds数据源属性列表</a></li>
</ul></li>
</ol>
<p><font size="4"><b>调用示例</b></font></p>
<pre><code class="language-python">import numpy as np
import metdig.onestep.diag_dynamic as diag_dynamic
import metdig.onestep.diag_thermal as diag_thermal
import metdig.hub.compare as compare
func = diag_dynamic.hgt_uv_vvel
compare.models_compare(func=func, show='tab')
func =diag_thermal.hgt_uv_tmp
compare.models_compare(func=func, show='list')</code></pre>
<p><font size="4"><b>输出图形</b></font></p>
<p><strong>list显示</strong></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=d1e975a159744868ab55b01e47c35542" alt="compare_ECMWF" title="compare_ECMWF" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=b44e205e02dc80d5b570fd0c6c842846" alt="compare_NCEP_GFS" title="compare_NCEP_GFS" /></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=33fe01980324246fc9a4ec0110ea8029" alt="compare_GRAPES_GFS" title="compare_GRAPES_GFS" /></p>
<p><strong>tab显示</strong></p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=e74d4e8f22b03bb4ffd759075dd1fc1c" alt="compare_tab" title="compare_tab" /></p>