metradar 0.1.8__tar.gz → 0.1.8.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. {metradar-0.1.8 → metradar-0.1.8.3}/.gitignore +1 -0
  2. metradar-0.1.8.3/LICENSE +31 -0
  3. {metradar-0.1.8/metradar.egg-info → metradar-0.1.8.3}/PKG-INFO +67 -9
  4. {metradar-0.1.8 → metradar-0.1.8.3}/README.md +63 -4
  5. {metradar-0.1.8 → metradar-0.1.8.3}/examples/download_data_from_cmadaas.ipynb +47 -60
  6. {metradar-0.1.8 → metradar-0.1.8.3}/examples/draw_mosaic_datan.ipynb +2 -20
  7. {metradar-0.1.8 → metradar-0.1.8.3}/examples/draw_radar_aws.ipynb +26 -15
  8. {metradar-0.1.8 → metradar-0.1.8.3}/examples/draw_radar_single.ipynb +3 -6
  9. {metradar-0.1.8 → metradar-0.1.8.3}/examples/draw_swan.ipynb +2 -20
  10. {metradar-0.1.8 → metradar-0.1.8.3}/examples/nowcasting_pysteps.ipynb +20 -29
  11. {metradar-0.1.8 → metradar-0.1.8.3}/examples/qc_velocity_dealias_cn.ipynb +3 -3
  12. {metradar-0.1.8 → metradar-0.1.8.3}/examples/qc_wradlib_clutter_cn.ipynb +110 -65
  13. {metradar-0.1.8 → metradar-0.1.8.3}/examples/wind_PyDDA_cn.ipynb +8 -8
  14. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/config.py +1 -1
  15. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/io/decode_fmt_pyart.py +1 -0
  16. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_mosaic/make_mosaic_func.py +2 -2
  17. metradar-0.1.8.3/metradar/project/make_vpr_aws/make_mosaic_20230731_daxing.ini +29 -0
  18. metradar-0.1.8.3/metradar/project/make_vpr_aws/make_mosaic_basefile.ini +29 -0
  19. {metradar-0.1.8 → metradar-0.1.8.3/metradar.egg-info}/PKG-INFO +67 -9
  20. {metradar-0.1.8 → metradar-0.1.8.3}/metradar.egg-info/SOURCES.txt +57 -3
  21. {metradar-0.1.8 → metradar-0.1.8.3}/metradar.egg-info/requires.txt +3 -4
  22. {metradar-0.1.8 → metradar-0.1.8.3}/pyproject.toml +5 -6
  23. metradar-0.1.8.3/resources/fonts/YaHeiConsolasHybrid_1.12.ttf +0 -0
  24. metradar-0.1.8.3/resources/gr2_colors/BR_AVL_BroadcastNegatives.pal +12 -0
  25. metradar-0.1.8.3/resources/gr2_colors/BR_SimuAwipsRC.pal +14 -0
  26. metradar-0.1.8.3/resources/gr2_colors/BR_WDTB_Bright.pal +18 -0
  27. metradar-0.1.8.3/resources/gr2_colors/BV_EvansVelo_Mph1.pal +26 -0
  28. metradar-0.1.8.3/resources/gr2_colors/BV_EvansVelo_Mph2.pal +22 -0
  29. metradar-0.1.8.3/resources/gr2_colors/BV_RTWX_VEL.pal +82 -0
  30. metradar-0.1.8.3/resources/gr2_colors/BV_simuAwips.pal +20 -0
  31. metradar-0.1.8.3/resources/gr2_colors/IR_dark_alpha.pal +19 -0
  32. metradar-0.1.8.3/resources/gr2_colors/IR_dark_alpha_for_colorbar.pal +16 -0
  33. metradar-0.1.8.3/resources/gr2_colors/SRV_EvansVelo_Mph.pal +26 -0
  34. metradar-0.1.8.3/resources/gr2_colors/Visible_depth.pal +13 -0
  35. metradar-0.1.8.3/resources/gr2_colors/Visible_transparent.pal +13 -0
  36. metradar-0.1.8.3/resources/gr2_colors/Visible_transparent_for_colorbar.pal +13 -0
  37. metradar-0.1.8.3/resources/gr2_colors/WV_noaa.pal +19 -0
  38. metradar-0.1.8.3/resources/gr2_colors/WV_noaa_new.pal +19 -0
  39. metradar-0.1.8.3/resources/gr2_colors/default_BR.pal +18 -0
  40. metradar-0.1.8.3/resources/gr2_colors/default_BR_CMA.pal +23 -0
  41. metradar-0.1.8.3/resources/gr2_colors/default_BR_CMA_full.pal +23 -0
  42. metradar-0.1.8.3/resources/gr2_colors/default_BR_PUP1.pal +29 -0
  43. metradar-0.1.8.3/resources/gr2_colors/default_BR_PUP2.pal +29 -0
  44. metradar-0.1.8.3/resources/gr2_colors/default_BR_full.pal +19 -0
  45. metradar-0.1.8.3/resources/gr2_colors/default_BV.pal +20 -0
  46. metradar-0.1.8.3/resources/gr2_colors/default_BV_CMA.pal +33 -0
  47. metradar-0.1.8.3/resources/gr2_colors/default_BV_PUP1.pal +33 -0
  48. metradar-0.1.8.3/resources/gr2_colors/default_BV_PUP2.pal +35 -0
  49. metradar-0.1.8.3/resources/gr2_colors/default_CC.pal +20 -0
  50. metradar-0.1.8.3/resources/gr2_colors/default_CC_ROSE.pal +30 -0
  51. metradar-0.1.8.3/resources/gr2_colors/default_ET.pal +21 -0
  52. metradar-0.1.8.3/resources/gr2_colors/default_ET_PUP.pal +27 -0
  53. metradar-0.1.8.3/resources/gr2_colors/default_HCAS.pal +17 -0
  54. metradar-0.1.8.3/resources/gr2_colors/default_IP.pal +8 -0
  55. metradar-0.1.8.3/resources/gr2_colors/default_KDP.pal +19 -0
  56. metradar-0.1.8.3/resources/gr2_colors/default_KDP_ROSE.pal +23 -0
  57. metradar-0.1.8.3/resources/gr2_colors/default_MEHS.pal +24 -0
  58. metradar-0.1.8.3/resources/gr2_colors/default_NROT.pal +16 -0
  59. metradar-0.1.8.3/resources/gr2_colors/default_PHI.pal +14 -0
  60. metradar-0.1.8.3/resources/gr2_colors/default_POSH.pal +16 -0
  61. metradar-0.1.8.3/resources/gr2_colors/default_RA.pal +10 -0
  62. metradar-0.1.8.3/resources/gr2_colors/default_SN.pal +11 -0
  63. metradar-0.1.8.3/resources/gr2_colors/default_SRV.pal +22 -0
  64. metradar-0.1.8.3/resources/gr2_colors/default_SW.pal +24 -0
  65. metradar-0.1.8.3/resources/gr2_colors/default_T_DS.pal +7 -0
  66. metradar-0.1.8.3/resources/gr2_colors/default_T_GR.pal +7 -0
  67. metradar-0.1.8.3/resources/gr2_colors/default_T_HA.pal +8 -0
  68. metradar-0.1.8.3/resources/gr2_colors/default_T_RA.pal +7 -0
  69. metradar-0.1.8.3/resources/gr2_colors/default_T_WS.pal +7 -0
  70. metradar-0.1.8.3/resources/gr2_colors/default_VIL.pal +19 -0
  71. metradar-0.1.8.3/resources/gr2_colors/default_VILD.pal +17 -0
  72. metradar-0.1.8.3/resources/gr2_colors/default_ZDR.pal +18 -0
  73. metradar-0.1.8.3/resources/gr2_colors/default_ZDR_ROSE.pal +24 -0
  74. metradar-0.1.8.3/resources/gr2_colors/default_ZR.pal +17 -0
  75. metradar-0.1.8.3/resources/stations/cma_city_station_info.dat +6 -0
  76. metradar-0.1.8.3/resources/stations/radars.csv +3 -0
  77. {metradar-0.1.8 → metradar-0.1.8.3}/setup.py +1 -1
  78. metradar-0.1.8/LICENSE +0 -21
  79. metradar-0.1.8/environment.yml +0 -317
  80. metradar-0.1.8/requirements.txt +0 -160
  81. {metradar-0.1.8 → metradar-0.1.8.3}/config.ini +0 -0
  82. {metradar-0.1.8 → metradar-0.1.8.3}/examples/read_rose.ipynb +0 -0
  83. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/__init__.py +0 -0
  84. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/core/__init__.py +0 -0
  85. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/core/get_cross_section.py +0 -0
  86. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/core/mosaic_merge.py +0 -0
  87. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/core/oa_dig_func.py +0 -0
  88. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/graph/__init__.py +0 -0
  89. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/graph/draw_comp_mosaic.py +0 -0
  90. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/graph/draw_latlon_func.py +0 -0
  91. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/graph/draw_radar_aws.py +0 -0
  92. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/graph/draw_radar_comp_func.py +0 -0
  93. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/graph/parse_pal.py +0 -0
  94. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/io/__init__.py +0 -0
  95. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/io/cnrad_level2.py +0 -0
  96. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/io/decode_pup_rose.py +0 -0
  97. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/io/pgmb_io.py +0 -0
  98. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/io/read_new_mosaic_func.py +0 -0
  99. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/io/read_swan.py +0 -0
  100. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/io/rose_structer.py +0 -0
  101. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/__init__.py +0 -0
  102. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_mosaic/__init__.py +0 -0
  103. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_mosaic/batch_draw_mosaic.py +0 -0
  104. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_mosaic/make_mosaic_mp.ini +0 -0
  105. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_mosaic/make_mosaic_mp.py +0 -0
  106. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_vpr_aws/__init__.py +0 -0
  107. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_vpr_aws/construct_aws_refvpr_mainprog.ini +0 -0
  108. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_vpr_aws/construct_aws_refvpr_mainprog.py +0 -0
  109. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_vpr_aws/exceptions.py +0 -0
  110. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/make_vpr_aws/geo_transforms_pyart.py +0 -0
  111. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/nowcasting/__init__.py +0 -0
  112. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/nowcasting/nowcast_by_pysteps.py +0 -0
  113. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/nowcasting/trans_mosaic_pgmb.py +0 -0
  114. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/Archive /346/250/241/345/274/217/350/257/264/346/230/216.txt" +0 -0
  115. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/__init__.py +0 -0
  116. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/archive_main_qpe_cfg.ini +0 -0
  117. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/do_s1.sh +0 -0
  118. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/do_s2.sh +0 -0
  119. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/do_s3.sh +0 -0
  120. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/do_s4.sh +0 -0
  121. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/do_s5.sh +0 -0
  122. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/exec_all.sh +0 -0
  123. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/get_rainrate_func.py +0 -0
  124. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/main_qpe_cfg.ini +0 -0
  125. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/s1_download_radar_region_cmadaas.py +0 -0
  126. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/s2_pre_process_single_radar.py +0 -0
  127. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/s3_trans_rainrate_to_qpe.py +0 -0
  128. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/s4_mosaic_qpe.py +0 -0
  129. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/qpe/s5_draw_qpe_mosaic.py +0 -0
  130. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/wind_retrieval/__init__.py +0 -0
  131. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/wind_retrieval/config_3dwind.ini +0 -0
  132. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/project/wind_retrieval/main_pydda.py +0 -0
  133. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/util/__init__.py +0 -0
  134. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/util/comm_func.py +0 -0
  135. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/util/exceptions.py +0 -0
  136. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/util/geo_transforms_pyart.py +0 -0
  137. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/util/get_tlogp_from_sharppy.py +0 -0
  138. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/util/make_gif.py +0 -0
  139. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/util/parse_pal.py +0 -0
  140. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/util/radar_common.py +0 -0
  141. {metradar-0.1.8 → metradar-0.1.8.3}/metradar/util/trans_new_mosaic_nc.py +0 -0
  142. {metradar-0.1.8 → metradar-0.1.8.3}/metradar.egg-info/dependency_links.txt +0 -0
  143. {metradar-0.1.8 → metradar-0.1.8.3}/metradar.egg-info/top_level.txt +0 -0
  144. {metradar-0.1.8 → metradar-0.1.8.3}/setup.cfg +0 -0
@@ -114,3 +114,4 @@ private_res/
114
114
 
115
115
  DEM/
116
116
  maps/
117
+ test/
@@ -0,0 +1,31 @@
1
+ License
2
+
3
+ Copyright (c) 2026 R & D Center for Weather Forecasting Technology (NMC-WFT, CMA)
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
23
+ THIS OPEN-SOURCE PROJECT IS PRIMARILY INTENDED FOR ACADEMIC EXCHANGE. ITS USE IN PROFIT-ORIENTED COMMERICAL ACTIVATIES IS EXPRRESSLY PROHIBITED IN PRINCIPLE. THE COPYRIGHT HOLDER RESERVES THE RIGHTS TO PURSUE LEGAL ACTION WHEN NECESSARY.
24
+
25
+ 许可证
26
+ 版权所有 (c) 2026 中国气象局国家气象中心天气预报技术研发室(NMC-WFT, CMA)
27
+ 特此授权,任何人免费获得本软件及其相关文档文件(以下简称“软件”)的副本后,均可不受限制地使用、复制、修改、合并、发布、分发、再许可该软件的副本,并允许向获得该软件的人员授予上述权利,但须遵守以下条件:
28
+ 1,上述版权声明和本授权声明必须包含在软件的所有副本或实质性组成部分中。
29
+ 2,本软件按“现状”提供,不附带任何形式的明示或暗示担保,包括但不限于对适销性、特定用途适用性及不侵权的担保。在任何情况下,作者或版权持有者均不对因本软件或其使用或其他交易而引起的任何索赔、损害或其他责任(无论是合同诉讼、侵权行为或其他)承担法律责任。
30
+ 3,本开源项目一般用于学术交流,原则上禁止用于盈利目的的商业活动,版权所有者保留必要时进行追诉的权利。
31
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: metradar
3
- Version: 0.1.8
3
+ Version: 0.1.8.3
4
4
  Summary: radar data processing
5
5
  Author-email: Wenjian Zhu <kevin2075@163.com>
6
6
  Project-URL: Homepage, https://github.com/nmcdev/metradar
@@ -23,16 +23,15 @@ Requires-Python: <3.13,>=3.10
23
23
  Description-Content-Type: text/markdown
24
24
  License-File: LICENSE
25
25
  Requires-Dist: openpyxl>=3.1.5
26
- Requires-Dist: pydda==2.2.0
26
+ Requires-Dist: pydda>=2.2.0
27
27
  Requires-Dist: tqdm>=4.67.0
28
28
  Requires-Dist: wradlib>=2.6.1
29
29
  Requires-Dist: MetPy>=1.7.1
30
30
  Requires-Dist: matplotlib>=3.10.8
31
- Requires-Dist: pysteps>=1.19.0
32
- Requires-Dist: nmc_met_io>=0.1.15.0
31
+ Requires-Dist: nmc_met_io>=0.1.16.0
33
32
  Requires-Dist: netCDF4>=1.7.4
34
33
  Requires-Dist: schedule>=1.2.2
35
- Requires-Dist: nmc_met_graphics>=0.1.5.4
34
+ Requires-Dist: nmc_met_graphics>=0.2.0
36
35
  Dynamic: license-file
37
36
 
38
37
  <div align="center">
@@ -47,7 +46,7 @@ Dynamic: license-file
47
46
 
48
47
  ### ✨强烈推荐先从examples目录下的所有notebook入手!
49
48
  ### ✨由于很多算法功能都是以完整项目形式共享,因此,建议用户将整个代码包从github上下载到本地进行后续开发!
50
-
49
+ ### ✨培训视频连接:https://www.bilibili.com/video/BV112BfBzEXq?vd_source=46a14909e851f4367d42b635b08f9160
51
50
  ### 📚主要功能包括
52
51
  * 1,雷达数据下载,自动站数据下载,下载功能集成在nmc_met_io工具包中;
53
52
  * 2,雷达基数据的读取(中国气象局最新的标准数据格式FMT)、绘图;
@@ -56,8 +55,8 @@ Dynamic: license-file
56
55
  * 5,雷达和自动站综合分析及绘图,自动站数据诊断分析包括散度、涡度计算、等值线客观分析等。
57
56
  * 6,雷达质控、批量绘图、三维组网产品制作、降水估测、三维风场反演、回波临近预报、雷达和自动站时间序列图等,其中部分算法以项目形式开源,提供一键式处理流程。
58
57
 
59
- ## 🛠️Install
60
- Using the fellowing command to install packages:
58
+ ## 🛠️安装
59
+ 用下面的命令行进行安装:
61
60
 
62
61
  * 使用pypi安装源安装(https://pypi.org/project/metradar/)
63
62
  ```
@@ -67,8 +66,8 @@ Using the fellowing command to install packages:
67
66
  * conda create -n radar312 python=3.12
68
67
  * conda activate radar312
69
68
  * pip install metradar
69
+ * conda install -c conda-forge pysteps -y
70
70
  * conda install -c conda-forge arm_pyart -y
71
- * conda install -c conda-forge cartopy -y
72
71
  * conda install -c conda-forge gdal -y
73
72
  * pip install tensorflow
74
73
  * pip install tensorflow-probability
@@ -89,3 +88,62 @@ RESOURCES_PATH = /home/wjzhu/metradar/resources
89
88
  ### ⚠️注意事项:
90
89
  * 资源文件RESOURCES 目录下的stations目录下的文件都是样例文件,不代表真实坐标,使用时,请自行按照同样的格式准备站点文件。
91
90
  * 样例测试数据需要单独下载,链接:https://github.com/zhuwenjian/metradar_testdata
91
+
92
+ ## 🚀补充材料:
93
+ ### * 方便国内用户安装和使用的补充材料如下:
94
+ 安装前,建议将pip源设置为阿里云的,将conda源设置为清华的,具体详情咨询AI即可。此外,地图文件,测试数据等也可以从下面对应链接获取。
95
+
96
+ ======================夸克网盘链接如下===========
97
+
98
+ 样例测试数据metradar_testdata
99
+ 链接:https://pan.quark.cn/s/c756f461c7d8
100
+
101
+ metradar工具包介绍.pptx
102
+ 链接:https://pan.quark.cn/s/0012cb00a686
103
+
104
+ metradar地图文件.zip
105
+ 链接:https://pan.quark.cn/s/28a4f86a9e53
106
+
107
+ =================百度网盘链接如下==========
108
+
109
+ metradar工具包介绍.pptx
110
+ 链接:https://pan.baidu.com/s/1Rfzo3zGu23hl4uvWPvsl9g?pwd=5wew
111
+ 提取码:5wew
112
+
113
+ metradar地图文件.zip
114
+ 链接:https://pan.baidu.com/s/1e3tvtGzI4KlZU33bJq0BHg?pwd=5wew
115
+ 提取码:5wew
116
+
117
+ 样例测试数据metradar_testdata
118
+ 链接:https://pan.baidu.com/s/1cYUHGL6Cqk4rK5uZCXrUWg?pwd=5wew
119
+ 提取码:5wew
120
+
121
+ ### 👇适合新手的保姆级材料来了,主要内容是:1,共享了miniconda的安装文件;2,上传了完整的安装视频。链接如下:
122
+
123
+ ==================夸克网盘=================
124
+
125
+ Linux版本的miniconda连接:
126
+ Miniconda3-latest-Linux-x86_64.sh
127
+ 链接:https://pan.quark.cn/s/16c39c495762
128
+
129
+ Windows版本的miniconda连接:
130
+ Miniconda3-latest-Windows-x86_64.exe
131
+ 链接:https://pan.quark.cn/s/392491e5b2a0
132
+
133
+ ================百度网盘==================
134
+
135
+ Linux版本的miniconda安装文件
136
+ Miniconda3-latest-Linux-x86_64.sh
137
+ 链接: https://pan.baidu.com/s/1aMFKaNbVfkPbIHziAH5lhg?pwd=jj5b 提取码: jj5b
138
+
139
+ Windows版本的miniconda安装文件
140
+ Miniconda3-latest-Linux-x86_64.sh
141
+ 链接: https://pan.baidu.com/s/1aMFKaNbVfkPbIHziAH5lhg?pwd=jj5b 提取码: jj5b
142
+
143
+ Linux下安装metradar的视频:
144
+ https://www.bilibili.com/video/BV15DzCB1EsC/?spm_id_from=333.1387.list.card_archive.click
145
+
146
+ Windows下安装metradar的视频:
147
+ https://www.bilibili.com/video/BV1d2zCB7E1R?spm_id_from=333.788.videopod.sections
148
+
149
+ Good Luck!
@@ -10,7 +10,7 @@
10
10
 
11
11
  ### ✨强烈推荐先从examples目录下的所有notebook入手!
12
12
  ### ✨由于很多算法功能都是以完整项目形式共享,因此,建议用户将整个代码包从github上下载到本地进行后续开发!
13
-
13
+ ### ✨培训视频连接:https://www.bilibili.com/video/BV112BfBzEXq?vd_source=46a14909e851f4367d42b635b08f9160
14
14
  ### 📚主要功能包括
15
15
  * 1,雷达数据下载,自动站数据下载,下载功能集成在nmc_met_io工具包中;
16
16
  * 2,雷达基数据的读取(中国气象局最新的标准数据格式FMT)、绘图;
@@ -19,8 +19,8 @@
19
19
  * 5,雷达和自动站综合分析及绘图,自动站数据诊断分析包括散度、涡度计算、等值线客观分析等。
20
20
  * 6,雷达质控、批量绘图、三维组网产品制作、降水估测、三维风场反演、回波临近预报、雷达和自动站时间序列图等,其中部分算法以项目形式开源,提供一键式处理流程。
21
21
 
22
- ## 🛠️Install
23
- Using the fellowing command to install packages:
22
+ ## 🛠️安装
23
+ 用下面的命令行进行安装:
24
24
 
25
25
  * 使用pypi安装源安装(https://pypi.org/project/metradar/)
26
26
  ```
@@ -30,8 +30,8 @@ Using the fellowing command to install packages:
30
30
  * conda create -n radar312 python=3.12
31
31
  * conda activate radar312
32
32
  * pip install metradar
33
+ * conda install -c conda-forge pysteps -y
33
34
  * conda install -c conda-forge arm_pyart -y
34
- * conda install -c conda-forge cartopy -y
35
35
  * conda install -c conda-forge gdal -y
36
36
  * pip install tensorflow
37
37
  * pip install tensorflow-probability
@@ -52,3 +52,62 @@ RESOURCES_PATH = /home/wjzhu/metradar/resources
52
52
  ### ⚠️注意事项:
53
53
  * 资源文件RESOURCES 目录下的stations目录下的文件都是样例文件,不代表真实坐标,使用时,请自行按照同样的格式准备站点文件。
54
54
  * 样例测试数据需要单独下载,链接:https://github.com/zhuwenjian/metradar_testdata
55
+
56
+ ## 🚀补充材料:
57
+ ### * 方便国内用户安装和使用的补充材料如下:
58
+ 安装前,建议将pip源设置为阿里云的,将conda源设置为清华的,具体详情咨询AI即可。此外,地图文件,测试数据等也可以从下面对应链接获取。
59
+
60
+ ======================夸克网盘链接如下===========
61
+
62
+ 样例测试数据metradar_testdata
63
+ 链接:https://pan.quark.cn/s/c756f461c7d8
64
+
65
+ metradar工具包介绍.pptx
66
+ 链接:https://pan.quark.cn/s/0012cb00a686
67
+
68
+ metradar地图文件.zip
69
+ 链接:https://pan.quark.cn/s/28a4f86a9e53
70
+
71
+ =================百度网盘链接如下==========
72
+
73
+ metradar工具包介绍.pptx
74
+ 链接:https://pan.baidu.com/s/1Rfzo3zGu23hl4uvWPvsl9g?pwd=5wew
75
+ 提取码:5wew
76
+
77
+ metradar地图文件.zip
78
+ 链接:https://pan.baidu.com/s/1e3tvtGzI4KlZU33bJq0BHg?pwd=5wew
79
+ 提取码:5wew
80
+
81
+ 样例测试数据metradar_testdata
82
+ 链接:https://pan.baidu.com/s/1cYUHGL6Cqk4rK5uZCXrUWg?pwd=5wew
83
+ 提取码:5wew
84
+
85
+ ### 👇适合新手的保姆级材料来了,主要内容是:1,共享了miniconda的安装文件;2,上传了完整的安装视频。链接如下:
86
+
87
+ ==================夸克网盘=================
88
+
89
+ Linux版本的miniconda连接:
90
+ Miniconda3-latest-Linux-x86_64.sh
91
+ 链接:https://pan.quark.cn/s/16c39c495762
92
+
93
+ Windows版本的miniconda连接:
94
+ Miniconda3-latest-Windows-x86_64.exe
95
+ 链接:https://pan.quark.cn/s/392491e5b2a0
96
+
97
+ ================百度网盘==================
98
+
99
+ Linux版本的miniconda安装文件
100
+ Miniconda3-latest-Linux-x86_64.sh
101
+ 链接: https://pan.baidu.com/s/1aMFKaNbVfkPbIHziAH5lhg?pwd=jj5b 提取码: jj5b
102
+
103
+ Windows版本的miniconda安装文件
104
+ Miniconda3-latest-Linux-x86_64.sh
105
+ 链接: https://pan.baidu.com/s/1aMFKaNbVfkPbIHziAH5lhg?pwd=jj5b 提取码: jj5b
106
+
107
+ Linux下安装metradar的视频:
108
+ https://www.bilibili.com/video/BV15DzCB1EsC/?spm_id_from=333.1387.list.card_archive.click
109
+
110
+ Windows下安装metradar的视频:
111
+ https://www.bilibili.com/video/BV1d2zCB7E1R?spm_id_from=333.788.videopod.sections
112
+
113
+ Good Luck!
@@ -18,36 +18,23 @@
18
18
  },
19
19
  {
20
20
  "cell_type": "code",
21
- "execution_count": 1,
21
+ "execution_count": null,
22
22
  "id": "3af5f15e",
23
23
  "metadata": {},
24
24
  "outputs": [
25
25
  {
26
- "name": "stdout",
27
- "output_type": "stream",
28
- "text": [
29
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705060617_P_DOR_ACHN_CREF_20250705_060000.bin\n",
30
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705061218_P_DOR_ACHN_CREF_20250705_060600.bin\n",
31
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705061818_P_DOR_ACHN_CREF_20250705_061200.bin\n",
32
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705062418_P_DOR_ACHN_CREF_20250705_061800.bin\n",
33
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705063019_P_DOR_ACHN_CREF_20250705_062400.bin\n",
34
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705063618_P_DOR_ACHN_CREF_20250705_063000.bin\n",
35
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705064218_P_DOR_ACHN_CREF_20250705_063600.bin\n",
36
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705064818_P_DOR_ACHN_CREF_20250705_064200.bin\n",
37
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705065419_P_DOR_ACHN_CREF_20250705_064800.bin\n",
38
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705070019_P_DOR_ACHN_CREF_20250705_065400.bin\n",
39
- "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_cref//2025/07/05/RADA_L3_MST_CREF_QC/Z_RADA_C_BABJ_20250705070617_P_DOR_ACHN_CREF_20250705_070000.bin\n"
26
+ "ename": "_ConfigFetchError",
27
+ "evalue": "The C:\\Users\\wenjianzhu\\.nmcdev\\config.ini doese not exist. Please create it with text editor. \n Refer to https://github.com/nmcdev/nmc_met_io ",
28
+ "output_type": "error",
29
+ "traceback": [
30
+ "\u001b[31m---------------------------------------------------------------------------\u001b[39m",
31
+ "\u001b[31m_ConfigFetchError\u001b[39m Traceback (most recent call last)",
32
+ "\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[1]\u001b[39m\u001b[32m, line 1\u001b[39m\n\u001b[32m----> \u001b[39m\u001b[32m1\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mnmc_met_io\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mretrieve_cmadaas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m cmadaas_radarmosaic_cref_by_timerange\n\u001b[32m 2\u001b[39m outpath = \u001b[33m'\u001b[39m\u001b[33md:/metradar_test/cmadaas/mosaic_cref/\u001b[39m\u001b[33m'\u001b[39m\n\u001b[32m 3\u001b[39m cmadaas_radarmosaic_cref_by_timerange( time_range=\u001b[33m'\u001b[39m\u001b[33m[20250705060000,20250705070000]\u001b[39m\u001b[33m'\u001b[39m, \n\u001b[32m 4\u001b[39m outpath=outpath)\n",
33
+ "\u001b[36mFile \u001b[39m\u001b[32mc:\\Users\\wenjianzhu\\.conda\\envs\\radar312_win\\Lib\\site-packages\\nmc_met_io\\retrieve_cmadaas.py:31\u001b[39m\n\u001b[32m 28\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mxarray\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mxr\u001b[39;00m\n\u001b[32m 29\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtqdm\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m tqdm\n\u001b[32m---> \u001b[39m\u001b[32m31\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mnmc_met_io\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mconfig\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mCONFIG\u001b[39;00m\n\u001b[32m 34\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34mget_rest_result\u001b[39m(interface_id, params, url_only=\u001b[38;5;28;01mFalse\u001b[39;00m,\n\u001b[32m 35\u001b[39m dns=\u001b[38;5;28;01mNone\u001b[39;00m, port=\u001b[38;5;28;01mNone\u001b[39;00m, data_format=\u001b[33m'\u001b[39m\u001b[33mjson\u001b[39m\u001b[33m'\u001b[39m):\n\u001b[32m 36\u001b[39m \u001b[38;5;250m \u001b[39m\u001b[33;03m\"\"\"\u001b[39;00m\n\u001b[32m 37\u001b[39m \u001b[33;03m Get the http result from CAMDaaS REST api service.\u001b[39;00m\n\u001b[32m 38\u001b[39m \u001b[33;03m 2021/01/13, 采用hashlib.md5对输入参数进行加密, 则在url中不会出现pwd关键字, 数据传输更加安全.\u001b[39;00m\n\u001b[32m (...)\u001b[39m\u001b[32m 59\u001b[39m \u001b[33;03m data = get_rest_result('getSurfEleByTime', params)\u001b[39;00m\n\u001b[32m 60\u001b[39m \u001b[33;03m \"\"\"\u001b[39;00m\n",
34
+ "\u001b[36mFile \u001b[39m\u001b[32mc:\\Users\\wenjianzhu\\.conda\\envs\\radar312_win\\Lib\\site-packages\\nmc_met_io\\config.py:60\u001b[39m\n\u001b[32m 57\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m config\n\u001b[32m 59\u001b[39m \u001b[38;5;66;03m# Global Variables\u001b[39;00m\n\u001b[32m---> \u001b[39m\u001b[32m60\u001b[39m CONFIG = \u001b[43m_get_config_from_rcfile\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 63\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34mget_cache_file\u001b[39m(sub_dir, filename, name=\u001b[38;5;28;01mNone\u001b[39;00m, cache_clear=\u001b[38;5;28;01mTrue\u001b[39;00m):\n\u001b[32m 64\u001b[39m \u001b[38;5;250m \u001b[39m\u001b[33;03m\"\"\"\u001b[39;00m\n\u001b[32m 65\u001b[39m \u001b[33;03m Get the cache file pathname.\u001b[39;00m\n\u001b[32m 66\u001b[39m \n\u001b[32m (...)\u001b[39m\u001b[32m 70\u001b[39m \u001b[33;03m :param cache_clear: if True, clear old cache folder\u001b[39;00m\n\u001b[32m 71\u001b[39m \u001b[33;03m \"\"\"\u001b[39;00m\n",
35
+ "\u001b[36mFile \u001b[39m\u001b[32mc:\\Users\\wenjianzhu\\.conda\\envs\\radar312_win\\Lib\\site-packages\\nmc_met_io\\config.py:47\u001b[39m, in \u001b[36m_get_config_from_rcfile\u001b[39m\u001b[34m()\u001b[39m\n\u001b[32m 41\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m rc.is_file():\n\u001b[32m 42\u001b[39m msg = (\n\u001b[32m 43\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mThe \u001b[39m\u001b[38;5;132;01m{}\u001b[39;00m\u001b[33m doese not exist. Please create it with text editor. \u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m 44\u001b[39m \u001b[33m\"\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[33m Refer to https://github.com/nmcdev/nmc_met_io \u001b[39m\u001b[33m\"\u001b[39m.format(\n\u001b[32m 45\u001b[39m CONFIG_DIR / \u001b[33m\"\u001b[39m\u001b[33mconfig.ini\u001b[39m\u001b[33m\"\u001b[39m)\n\u001b[32m 46\u001b[39m )\n\u001b[32m---> \u001b[39m\u001b[32m47\u001b[39m \u001b[38;5;28;01mraise\u001b[39;00m _ConfigFetchError(msg)\n\u001b[32m 49\u001b[39m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[32m 50\u001b[39m config = configparser.ConfigParser()\n",
36
+ "\u001b[31m_ConfigFetchError\u001b[39m: The C:\\Users\\wenjianzhu\\.nmcdev\\config.ini doese not exist. Please create it with text editor. \n Refer to https://github.com/nmcdev/nmc_met_io "
40
37
  ]
41
- },
42
- {
43
- "data": {
44
- "text/plain": [
45
- "True"
46
- ]
47
- },
48
- "execution_count": 1,
49
- "metadata": {},
50
- "output_type": "execute_result"
51
38
  }
52
39
  ],
53
40
  "source": [
@@ -67,7 +54,7 @@
67
54
  },
68
55
  {
69
56
  "cell_type": "code",
70
- "execution_count": 3,
57
+ "execution_count": 2,
71
58
  "id": "eb054787",
72
59
  "metadata": {},
73
60
  "outputs": [
@@ -75,17 +62,17 @@
75
62
  "name": "stdout",
76
63
  "output_type": "stream",
77
64
  "text": [
78
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705060640_P_DOR_ACHN_QREF_20250705_060000.bin\n",
79
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705061240_P_DOR_ACHN_QREF_20250705_060600.bin\n",
80
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705061841_P_DOR_ACHN_QREF_20250705_061200.bin\n",
81
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705062440_P_DOR_ACHN_QREF_20250705_061800.bin\n",
82
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705063041_P_DOR_ACHN_QREF_20250705_062400.bin\n",
83
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705063640_P_DOR_ACHN_QREF_20250705_063000.bin\n",
84
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705064241_P_DOR_ACHN_QREF_20250705_063600.bin\n",
85
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705064840_P_DOR_ACHN_QREF_20250705_064200.bin\n",
86
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705065440_P_DOR_ACHN_QREF_20250705_064800.bin\n",
87
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705070041_P_DOR_ACHN_QREF_20250705_065400.bin\n",
88
- "Save file to: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705070639_P_DOR_ACHN_QREF_20250705_070000.bin\n"
65
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705060640_P_DOR_ACHN_QREF_20250705_060000.bin\n",
66
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705061240_P_DOR_ACHN_QREF_20250705_060600.bin\n",
67
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705061841_P_DOR_ACHN_QREF_20250705_061200.bin\n",
68
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705062440_P_DOR_ACHN_QREF_20250705_061800.bin\n",
69
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705063041_P_DOR_ACHN_QREF_20250705_062400.bin\n",
70
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705063640_P_DOR_ACHN_QREF_20250705_063000.bin\n",
71
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705064241_P_DOR_ACHN_QREF_20250705_063600.bin\n",
72
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705064840_P_DOR_ACHN_QREF_20250705_064200.bin\n",
73
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705065440_P_DOR_ACHN_QREF_20250705_064800.bin\n",
74
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705070041_P_DOR_ACHN_QREF_20250705_065400.bin\n",
75
+ "File already exists: /mnt/e/metradar_test/cmadaas/mosaic_qref//2025/07/05/RADA_L3_MST_REF_QC/Z_RADA_C_BABJ_20250705070639_P_DOR_ACHN_QREF_20250705_070000.bin\n"
89
76
  ]
90
77
  },
91
78
  {
@@ -94,7 +81,7 @@
94
81
  "True"
95
82
  ]
96
83
  },
97
- "execution_count": 3,
84
+ "execution_count": 2,
98
85
  "metadata": {},
99
86
  "output_type": "execute_result"
100
87
  }
@@ -418,7 +405,7 @@
418
405
  },
419
406
  {
420
407
  "cell_type": "code",
421
- "execution_count": 11,
408
+ "execution_count": 3,
422
409
  "id": "f8cebf80",
423
410
  "metadata": {},
424
411
  "outputs": [
@@ -426,26 +413,26 @@
426
413
  "name": "stdout",
427
414
  "output_type": "stream",
428
415
  "text": [
429
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705062401_O_DOR_SAD_CAP_FMT.bin.bz2\n",
430
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705062400_O_DOR_SAD_CAP_FMT.bin.bz2\n",
431
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705063001_O_DOR_SAD_CAP_FMT.bin.bz2\n",
432
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705063000_O_DOR_SAD_CAP_FMT.bin.bz2\n",
433
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705063601_O_DOR_SAD_CAP_FMT.bin.bz2\n",
434
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705063600_O_DOR_SAD_CAP_FMT.bin.bz2\n",
435
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705064200_O_DOR_SAD_CAP_FMT.bin.bz2\n",
436
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705064201_O_DOR_SAD_CAP_FMT.bin.bz2\n",
437
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705064800_O_DOR_SAD_CAP_FMT.bin.bz2\n",
438
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705064800_O_DOR_SAD_CAP_FMT.bin.bz2\n",
439
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705065401_O_DOR_SAD_CAP_FMT.bin.bz2\n",
440
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705065401_O_DOR_SAD_CAP_FMT.bin.bz2\n",
441
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705060000_O_DOR_SAD_CAP_FMT.bin.bz2\n",
442
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705060000_O_DOR_SAD_CAP_FMT.bin.bz2\n",
443
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705060600_O_DOR_SAD_CAP_FMT.bin.bz2\n",
444
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705060600_O_DOR_SAD_CAP_FMT.bin.bz2\n",
445
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705061200_O_DOR_SAD_CAP_FMT.bin.bz2\n",
446
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705061201_O_DOR_SAD_CAP_FMT.bin.bz2\n",
447
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705061801_O_DOR_SAD_CAP_FMT.bin.bz2\n",
448
- "Save file to: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705061800_O_DOR_SAD_CAP_FMT.bin.bz2\n"
416
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705062401_O_DOR_SAD_CAP_FMT.bin.bz2\n",
417
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705062400_O_DOR_SAD_CAP_FMT.bin.bz2\n",
418
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705063001_O_DOR_SAD_CAP_FMT.bin.bz2\n",
419
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705063000_O_DOR_SAD_CAP_FMT.bin.bz2\n",
420
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705063601_O_DOR_SAD_CAP_FMT.bin.bz2\n",
421
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705063600_O_DOR_SAD_CAP_FMT.bin.bz2\n",
422
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705064200_O_DOR_SAD_CAP_FMT.bin.bz2\n",
423
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705064201_O_DOR_SAD_CAP_FMT.bin.bz2\n",
424
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705064800_O_DOR_SAD_CAP_FMT.bin.bz2\n",
425
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705064800_O_DOR_SAD_CAP_FMT.bin.bz2\n",
426
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705065401_O_DOR_SAD_CAP_FMT.bin.bz2\n",
427
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705065401_O_DOR_SAD_CAP_FMT.bin.bz2\n",
428
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705060000_O_DOR_SAD_CAP_FMT.bin.bz2\n",
429
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705060000_O_DOR_SAD_CAP_FMT.bin.bz2\n",
430
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705060600_O_DOR_SAD_CAP_FMT.bin.bz2\n",
431
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705060600_O_DOR_SAD_CAP_FMT.bin.bz2\n",
432
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705061200_O_DOR_SAD_CAP_FMT.bin.bz2\n",
433
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705061201_O_DOR_SAD_CAP_FMT.bin.bz2\n",
434
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9010/Z_RADR_I_Z9010_20250705061801_O_DOR_SAD_CAP_FMT.bin.bz2\n",
435
+ "File already exists: /mnt/e/metradar_test/cmadaas/radar_level2//2025/07/05/Z9200/Z_RADR_I_Z9200_20250705061800_O_DOR_SAD_CAP_FMT.bin.bz2\n"
449
436
  ]
450
437
  },
451
438
  {
@@ -454,7 +441,7 @@
454
441
  "True"
455
442
  ]
456
443
  },
457
- "execution_count": 11,
444
+ "execution_count": 3,
458
445
  "metadata": {},
459
446
  "output_type": "execute_result"
460
447
  }
@@ -13,25 +13,7 @@
13
13
  "execution_count": 1,
14
14
  "id": "72026524",
15
15
  "metadata": {},
16
- "outputs": [
17
- {
18
- "name": "stdout",
19
- "output_type": "stream",
20
- "text": [
21
- "\n",
22
- "## You are using the Python ARM Radar Toolkit (Py-ART), an open source\n",
23
- "## library for working with weather radar data. Py-ART is partly\n",
24
- "## supported by the U.S. Department of Energy as part of the Atmospheric\n",
25
- "## Radiation Measurement (ARM) Climate Research Facility, an Office of\n",
26
- "## Science user facility.\n",
27
- "##\n",
28
- "## If you use this software to prepare a publication, please cite:\n",
29
- "##\n",
30
- "## JJ Helmus and SM Collis, JORS 2016, doi: 10.5334/jors.119\n",
31
- "\n"
32
- ]
33
- }
34
- ],
16
+ "outputs": [],
35
17
  "source": [
36
18
  "%matplotlib inline\n",
37
19
  "import os\n",
@@ -57,7 +39,7 @@
57
39
  },
58
40
  {
59
41
  "cell_type": "code",
60
- "execution_count": 4,
42
+ "execution_count": 3,
61
43
  "id": "324d2930",
62
44
  "metadata": {},
63
45
  "outputs": [
@@ -18,7 +18,7 @@
18
18
  },
19
19
  {
20
20
  "cell_type": "code",
21
- "execution_count": 1,
21
+ "execution_count": null,
22
22
  "id": "c4880bed",
23
23
  "metadata": {},
24
24
  "outputs": [
@@ -207,7 +207,7 @@
207
207
  },
208
208
  {
209
209
  "cell_type": "code",
210
- "execution_count": 1,
210
+ "execution_count": 4,
211
211
  "id": "c21f2504",
212
212
  "metadata": {},
213
213
  "outputs": [
@@ -302,7 +302,7 @@
302
302
  },
303
303
  {
304
304
  "cell_type": "code",
305
- "execution_count": 2,
305
+ "execution_count": 5,
306
306
  "id": "d0e037d0",
307
307
  "metadata": {},
308
308
  "outputs": [
@@ -312,7 +312,7 @@
312
312
  "True"
313
313
  ]
314
314
  },
315
- "execution_count": 2,
315
+ "execution_count": 5,
316
316
  "metadata": {},
317
317
  "output_type": "execute_result"
318
318
  }
@@ -326,7 +326,7 @@
326
326
  },
327
327
  {
328
328
  "cell_type": "code",
329
- "execution_count": 3,
329
+ "execution_count": 6,
330
330
  "id": "15c8dc34",
331
331
  "metadata": {},
332
332
  "outputs": [
@@ -334,12 +334,12 @@
334
334
  "name": "stdout",
335
335
  "output_type": "stream",
336
336
  "text": [
337
+ "differential_phase\n",
338
+ "velocity\n",
337
339
  "reflectivity\n",
338
340
  "cross_correlation_ratio\n",
339
- "differential_phase\n",
340
- "spectrum_width\n",
341
341
  "differential_reflectivity\n",
342
- "velocity\n",
342
+ "spectrum_width\n",
343
343
  "/mnt/e/metradar_test/radar_aws/pic/垂直剖面/20210720.083000.reflectivity.png\n"
344
344
  ]
345
345
  }
@@ -351,7 +351,7 @@
351
351
  },
352
352
  {
353
353
  "cell_type": "code",
354
- "execution_count": 10,
354
+ "execution_count": 7,
355
355
  "id": "692dd914",
356
356
  "metadata": {},
357
357
  "outputs": [
@@ -359,7 +359,7 @@
359
359
  "name": "stdout",
360
360
  "output_type": "stream",
361
361
  "text": [
362
- "image saved: /mnt/e/metradar_test/radar_aws/pic/0.5_ref/20210720.083000.png\n"
362
+ "/mnt/e/metradar_test/radar_aws/pic/0.5_ref/20210720.083000.png\n"
363
363
  ]
364
364
  }
365
365
  ],
@@ -464,7 +464,7 @@
464
464
  },
465
465
  {
466
466
  "cell_type": "code",
467
- "execution_count": 2,
467
+ "execution_count": 8,
468
468
  "id": "659cfafd",
469
469
  "metadata": {},
470
470
  "outputs": [
@@ -482,7 +482,7 @@
482
482
  "True"
483
483
  ]
484
484
  },
485
- "execution_count": 2,
485
+ "execution_count": 8,
486
486
  "metadata": {},
487
487
  "output_type": "execute_result"
488
488
  }
@@ -495,7 +495,7 @@
495
495
  },
496
496
  {
497
497
  "cell_type": "code",
498
- "execution_count": 3,
498
+ "execution_count": 9,
499
499
  "id": "d529b2c6",
500
500
  "metadata": {},
501
501
  "outputs": [
@@ -515,10 +515,21 @@
515
515
  },
516
516
  {
517
517
  "cell_type": "code",
518
- "execution_count": null,
518
+ "execution_count": 10,
519
519
  "id": "0fd33dfe",
520
520
  "metadata": {},
521
- "outputs": [],
521
+ "outputs": [
522
+ {
523
+ "name": "stdout",
524
+ "output_type": "stream",
525
+ "text": [
526
+ "/mnt/e/metradar_test/radar_aws/pic/cref_pre/20210720.083000.png\n",
527
+ "/mnt/e/metradar_test/radar_aws/pic/cref_wind_barb/20210720.083000.png\n",
528
+ "/mnt/e/metradar_test/radar_aws/pic/cref_wind_quiver/20210720.083000.png\n",
529
+ "/mnt/e/metradar_test/radar_aws/pic/cref_pre_wind_barb/20210720.083000.png\n"
530
+ ]
531
+ }
532
+ ],
522
533
  "source": [
523
534
  "_draw_radar_other.draw_cref_pre(subdir='cref_pre',)\n",
524
535
  "_draw_radar_other.draw_cref_wind_barb(subdir='cref_wind_barb',)\n",
@@ -255,7 +255,7 @@
255
255
  },
256
256
  {
257
257
  "cell_type": "code",
258
- "execution_count": 4,
258
+ "execution_count": 3,
259
259
  "metadata": {},
260
260
  "outputs": [],
261
261
  "source": [
@@ -294,7 +294,7 @@
294
294
  },
295
295
  {
296
296
  "cell_type": "code",
297
- "execution_count": 6,
297
+ "execution_count": 4,
298
298
  "metadata": {},
299
299
  "outputs": [
300
300
  {
@@ -479,7 +479,7 @@
479
479
  },
480
480
  {
481
481
  "cell_type": "code",
482
- "execution_count": 11,
482
+ "execution_count": null,
483
483
  "metadata": {},
484
484
  "outputs": [
485
485
  {
@@ -495,9 +495,6 @@
495
495
  ],
496
496
  "source": [
497
497
  "fig = plt.figure(figsize=(8,6))\n",
498
- "# nmc_draw.add_china_map_2cartopy(ax1, name='county', edgecolor='darkgray', lw=0.5)\n",
499
- "# nmc_draw.add_china_map_2cartopy(ax1, name='province', edgecolor='k', lw=1)\n",
500
- "\n",
501
498
  "display.plot_ppi_map('cross_correlation_ratio', 0, vmin=0.45, vmax=1,cmap='Wild25',resolution='50m',\n",
502
499
  " min_lon=g_rad_lon-rs, max_lon=g_rad_lon+rs, \n",
503
500
  " min_lat=g_rad_lat -rs, max_lat=g_rad_lat +rs,\n",