前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >​雷达系列:必须更新!测试cinrad最新更新的read_auto

​雷达系列:必须更新!测试cinrad最新更新的read_auto

作者头像
用户11172986
发布2024-07-19 13:24:50
1250
发布2024-07-19 13:24:50
举报
文章被收录于专栏:气python风雨

雷达系列:必须更新!测试cinrad最新更新的read_auto

前言

最近pycinrad更新1.9.0版本,更新内容如下

我们来试试新鲜出炉的read_auto函数吧

温馨提示

本文镜像 :气象分析3.9

由于可视化代码过长隐藏,可点击运行Fork查看 🔜🔜若没有成功加载可视化图,点击运行可以查看 ps:隐藏代码在【代码已被隐藏】所在行,点击所在行,可以看到该行的最右角,会出现个三角形,点击查看即可

代码语言:javascript
复制
!pip install --upgrade --index-url=https://pypi.mirrors.ustc.edu.cn/simple cinrad --user
代码语言:javascript
复制
Looking in indexes: https://pypi.mirrors.ustc.edu.cn/simple
Requirement already satisfied: cinrad in /opt/conda/lib/python3.9/site-packages (1.8.0)
Collecting cinrad
  Downloading https://mirrors.bfsu.edu.cn/pypi/web/packages/28/56/d0e16fc19e471cd61d06de5d21d32600c23908247d90c00fa573161f327c/cinrad-1.9.0.tar.gz (392 kB)
[2K     [90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━[0m [32m392.7/392.7 kB[0m [31m2.9 MB/s[0m eta [36m0:00:00[0ma [36m0:00:01[0m
[?25h  Preparing metadata (setup.py) ... [?25ldone
[?25hRequirement already satisfied: metpy>=0.8 in /opt/conda/lib/python3.9/site-packages (from cinrad) (1.6.1)
Requirement already satisfied: cartopy>=0.15 in /opt/conda/lib/python3.9/site-packages (from cinrad) (0.22.0)
Requirement already satisfied: pyshp!=2.0.0,!=2.0.1 in /opt/conda/lib/python3.9/site-packages (from cinrad) (2.3.1)
Requirement already satisfied: matplotlib>=2.2 in /opt/conda/lib/python3.9/site-packages (from cinrad) (3.8.3)
Requirement already satisfied: vanadis in /opt/conda/lib/python3.9/site-packages (from cinrad) (0.0.2)
Requirement already satisfied: cinrad_data>=0.1 in /opt/conda/lib/python3.9/site-packages (from cinrad) (0.1)
Requirement already satisfied: packaging>=20 in /opt/conda/lib/python3.9/site-packages (from cartopy>=0.15->cinrad) (23.2)
Requirement already satisfied: numpy>=1.21 in /opt/conda/lib/python3.9/site-packages (from cartopy>=0.15->cinrad) (1.26.4)
Requirement already satisfied: pyproj>=3.1.0 in /opt/conda/lib/python3.9/site-packages (from cartopy>=0.15->cinrad) (3.4.1)
Requirement already satisfied: shapely>=1.7 in /opt/conda/lib/python3.9/site-packages (from cartopy>=0.15->cinrad) (1.8.5.post1)
Requirement already satisfied: kiwisolver>=1.3.1 in /opt/conda/lib/python3.9/site-packages (from matplotlib>=2.2->cinrad) (1.4.2)
Requirement already satisfied: importlib-resources>=3.2.0 in /opt/conda/lib/python3.9/site-packages (from matplotlib>=2.2->cinrad) (5.7.1)
Requirement already satisfied: cycler>=0.10 in /opt/conda/lib/python3.9/site-packages (from matplotlib>=2.2->cinrad) (0.11.0)
Requirement already satisfied: contourpy>=1.0.1 in /opt/conda/lib/python3.9/site-packages (from matplotlib>=2.2->cinrad) (1.2.0)
Requirement already satisfied: pyparsing>=2.3.1 in /opt/conda/lib/python3.9/site-packages (from matplotlib>=2.2->cinrad) (3.0.9)
Requirement already satisfied: fonttools>=4.22.0 in /opt/conda/lib/python3.9/site-packages (from matplotlib>=2.2->cinrad) (4.33.3)
Requirement already satisfied: pillow>=8 in /opt/conda/lib/python3.9/site-packages (from matplotlib>=2.2->cinrad) (9.4.0)
Requirement already satisfied: python-dateutil>=2.7 in /opt/conda/lib/python3.9/site-packages (from matplotlib>=2.2->cinrad) (2.8.2)
Requirement already satisfied: traitlets>=5.0.5 in /opt/conda/lib/python3.9/site-packages (from metpy>=0.8->cinrad) (5.2.0)
Requirement already satisfied: pandas>=1.4.0 in /opt/conda/lib/python3.9/site-packages (from metpy>=0.8->cinrad) (2.0.3)
Requirement already satisfied: pooch>=1.2.0 in /opt/conda/lib/python3.9/site-packages (from metpy>=0.8->cinrad) (1.8.1)
Requirement already satisfied: pint>=0.17 in /opt/conda/lib/python3.9/site-packages (from metpy>=0.8->cinrad) (0.23)
Requirement already satisfied: xarray>=0.21.0 in /opt/conda/lib/python3.9/site-packages (from metpy>=0.8->cinrad) (2024.2.0)
Requirement already satisfied: scipy>=1.8.0 in /opt/conda/lib/python3.9/site-packages (from metpy>=0.8->cinrad) (1.11.4)
Requirement already satisfied: zipp>=3.1.0 in /opt/conda/lib/python3.9/site-packages (from importlib-resources>=3.2.0->matplotlib>=2.2->cinrad) (3.8.0)
Requirement already satisfied: pytz>=2020.1 in /opt/conda/lib/python3.9/site-packages (from pandas>=1.4.0->metpy>=0.8->cinrad) (2022.1)
Requirement already satisfied: tzdata>=2022.1 in /opt/conda/lib/python3.9/site-packages (from pandas>=1.4.0->metpy>=0.8->cinrad) (2024.1)
Requirement already satisfied: typing-extensions in /opt/conda/lib/python3.9/site-packages (from pint>=0.17->metpy>=0.8->cinrad) (4.7.1)
Requirement already satisfied: requests>=2.19.0 in /opt/conda/lib/python3.9/site-packages (from pooch>=1.2.0->metpy>=0.8->cinrad) (2.27.1)
Requirement already satisfied: platformdirs>=2.5.0 in /opt/conda/lib/python3.9/site-packages (from pooch>=1.2.0->metpy>=0.8->cinrad) (4.2.0)
Requirement already satisfied: certifi in /opt/conda/lib/python3.9/site-packages (from pyproj>=3.1.0->cartopy>=0.15->cinrad) (2024.2.2)
Requirement already satisfied: six>=1.5 in /opt/conda/lib/python3.9/site-packages (from python-dateutil>=2.7->matplotlib>=2.2->cinrad) (1.16.0)
Requirement already satisfied: idna<4,>=2.5 in /opt/conda/lib/python3.9/site-packages (from requests>=2.19.0->pooch>=1.2.0->metpy>=0.8->cinrad) (3.3)
Requirement already satisfied: charset-normalizer~=2.0.0 in /opt/conda/lib/python3.9/site-packages (from requests>=2.19.0->pooch>=1.2.0->metpy>=0.8->cinrad) (2.0.12)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /opt/conda/lib/python3.9/site-packages (from requests>=2.19.0->pooch>=1.2.0->metpy>=0.8->cinrad) (1.26.9)
Building wheels for collected packages: cinrad
  Building wheel for cinrad (setup.py) ... [?25ldone
[?25h  Created wheel for cinrad: filename=cinrad-1.9.0-cp39-cp39-linux_x86_64.whl size=642314 sha256=40ece76952768a0faff6942d3b102836ae82c9216a9b233e5e16fb64dd3aca49
  Stored in directory: /home/mw/.cache/pip/wheels/6e/08/49/d0688c1740d9d867a940e78bfd270d9f9f141e32b106ba50ef
Successfully built cinrad
Installing collected packages: cinrad
Successfully installed cinrad-1.9.0

型号:CC/CCJ

代码语言:javascript
复制
import cinrad

ds1 =  cinrad.io.read_auto('/home/mw/input/pycwr5461/2016070817 (1).48V.gz')
ds1.available_product(0)
代码语言:javascript
复制
['REF', 'VEL', 'SW', 'azimuth']

型号:SC

代码语言:javascript
复制
import cinrad

ds1 =  cinrad.io.read_auto('/home/mw/input/pycwr5461/Z_RADR_I_Z9240_20190703101340_O_DOR_SC_CAP.bin.bz2')
ds1.available_product(0)
代码语言:javascript
复制
['REF', 'VEL', 'SW', 'azimuth', 'RF']

型号:SAD

代码语言:javascript
复制
import cinrad

ds1 =  cinrad.io.read_auto('/home/mw/input/pycwr5461/Z_RADR_I_Z9898_20190828181529_O_DOR_SAD_CAP_FMT (1).bin.bz2')
ds1.available_product(0)
代码语言:javascript
复制
['TREF', 'REF', 'SQI', 'ZDR', 'RHO', 'PHI', 'KDP', 'SNRH']

型号:SB

没骂人

代码语言:javascript
复制
import cinrad
ds1 =  cinrad.io.read_auto('/home/mw/input/pycwr5461/Z9396_BASE_SB_20180724_055400 (1).bin.bz2')
ds1.available_product(0)
代码语言:javascript
复制
---------------------------------------------------------------------------

RadarDecodeError                          Traceback (most recent call last)

Input In [1], in <cell line: 2>()
      1 import cinrad
----> 2 ds1 =  cinrad.io.read_auto('/home/mw/input/pycwr5461/Z9396_BASE_SB_20180724_055400 (1).bin.bz2')
      3 ds1.available_product(0)


File ~/.local/lib/python3.9/site-packages/cinrad/io/__init__.py:52, in read_auto(filename)
     50 cc_flag = flag[116:122]
     51 if flag[14:16] == b"\x01\x00" or sc_flag == b"CINRAD" or cc_flag == b"CINRAD":
---> 52     return CinradReader(filename)
     53 raise Exception("Unknown radar type")


File ~/.local/lib/python3.9/site-packages/cinrad/io/level2.py:116, in CinradReader.__init__(self, file, radar_type)
    114 else:
    115     if not t_infer:
--> 116         raise RadarDecodeError(
    117             "Unable to determine the file type. Use `radar_type` keyword"
    118             "to specify the radar type."
    119         )
    120     self.radartype = t_infer
    121 self.site_info = {}


RadarDecodeError: Unable to determine the file type. Use `radar_type` keywordto specify the radar type.
代码语言:javascript
复制
from cinrad.io import CinradReader, StandardData
SB = CinradReader('/home/mw/input/pycwr5461/Z9396_BASE_SB_20180724_055400 (1).bin.bz2',radar_type='SB') 
SB.available_product(0)
代码语言:javascript
复制
/home/mw/.local/lib/python3.9/site-packages/cinrad/io/level2.py:109: UserWarning: Contradictory information from input radar type andradar type detected from input file.
  warnings.warn(





['REF', 'VEL', 'SW', 'azimuth', 'RF']

read_auto不支持直接读取SB,当然我们可以像上面一样读取

相控阵

代码语言:javascript
复制
import cinrad

ds1 =  cinrad.io.read_auto('/home/mw/input/pycwr5461/Z_RADR_I_ZGZ01_20200820220246_O_DOR_DXK_CAR.bin.bz2')
ds1.available_product(0)
代码语言:javascript
复制
---------------------------------------------------------------------------

Exception                                 Traceback (most recent call last)

Input In [10], in <cell line: 3>()
      1 import cinrad
----> 3 ds1 =  cinrad.io.read_auto('/home/mw/input/pycwr5461/Z_RADR_I_ZGZ01_20200820220246_O_DOR_DXK_CAR.bin.bz2')
      4 ds1.available_product(0)


File ~/.local/lib/python3.9/site-packages/cinrad/io/__init__.py:53, in read_auto(filename)
     51 if flag[14:16] == b"\x01\x00" or sc_flag == b"CINRAD" or cc_flag == b"CINRAD":
     52     return CinradReader(filename)
---> 53 raise Exception("Unknown radar type")


Exception: Unknown radar type

当然对于多变的相控阵格式是不支持的,相信应该可以读取最新格式的相控阵雷达数据

小结

谢谢开发者们对于pycinrad的不断维护,read_auto函数应该能满足大多数用户的需求了

pycinrad对于业务人员的使用是越来越友好了

相信随着使用难度的降低,会有越来越多的用户加入

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-07-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 气python风雨 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 雷达系列:必须更新!测试cinrad最新更新的read_auto
    • 前言
      • 温馨提示
        • 型号:CC/CCJ
          • 型号:SC
            • 型号:SAD
              • 型号:SB
                • 相控阵
                  • 小结
                  相关产品与服务
                  腾讯云服务器利旧
                  云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档