雷达基数据绘制成雷达图

news2025/1/1 9:47:35

x波段雷达基数据绘制成雷达图

1.雷达基数据格式Z_RADR_I_ZR001_20240521020002_O_DOR_YLD2-D_CAP_FMT.bin.bz2

2.基数据读取


```python
f = StandardData(i)  # 新版本标准数据
            radarTime = f.scantime  # 获取雷达时次
            date_str = radarTime.strftime('%Y-%m-%d %H:%M:%S')
            date_str = date_str.replace(' ', '_').replace(':', '')
            stationCode = f.code
            f.available_product(0)

3.基本反射率dbz读取,其他要素类似

        r = f.get_data(0, 400, "REF")
        dbz_path = pngPath + '/' + stationCode + '/' + 'dbz' + '/'
        if not os.path.exists(dbz_path):  # 如果路径不存在
            os.makedirs(dbz_path)  # 则创建该目录
        else:
            print("dbz路径已经存在")
        dbz_name = stationCode + '_' + 'dbz' + '_' + date_str + '.png'
        dbz_pro = os.path.join(dbz_path, dbz_name)
        draw_dbz(r, dbz_pro)
        rpath_dbz = os.path.relpath(dbz_pro, pngPath).replace('\\', '/')
        add_record(stationCode, radarTime, 'dbz', rpath_dbz)

4.绘制dbz雷达图,其余要素类似

def draw_dbz(r, dbz_pro):
    ref = r.REF
    proj = ccrs.PlateCarree()  # 创建投影,选择cartopy的platecarree投影
    fig = plt.figure(figsize=(6, 6))  # 创建页面,可以自己选择大小
    # ax = fig.subplots(subplot_kw={'projection': proj})  #子图
    ax = fig.add_subplot(1, 1, 1, projection=proj)
    for spine in ax.spines.values():
        spine.set_visible(False)
    color_max = int(ref.max()) + 1
    color_min = int(ref.min())
    n_gap = (color_max - color_min) / 20
    # levels = np.arange(color_min,color_max+n_gap,n_gap)
    levs = [0, 10.0, 15.0, 20.0, 25.0, 30.0, 35.0, 40.0, 45.0, 50.0, 55.0, 60.0, 65.0, 70.0]
    cols = [(0, 0, 0, 0), (0, 161 / 255, 247 / 255), (1 / 255, 236 / 255, 237 / 255), (0, 216 / 255, 0),
            (1 / 255, 144 / 255, 0), (255 / 255, 255 / 255, 0), (231 / 255, 192 / 255, 0),
            (255 / 255, 144 / 255, 0), (255 / 255, 0, 0), (214 / 255, 0, 0), (192 / 255, 0, 0),
            (255 / 255, 0, 240 / 255),
            (150 / 255, 0, 180 / 255), (173 / 255, 144 / 255, 240 / 255)]
    # 创建自定义颜色映射
    custom_cmap = ListedColormap(cols)
    norm = BoundaryNorm(levs, custom_cmap.N, clip=False)
    # 绘制等高线填充图
    plt.contourf(r.longitude, r.latitude, ref, cmap=custom_cmap, norm=norm, levels=levs)
    # 设置透明背景并保存图片
    plt.savefig(dbz_pro, transparent=True, dpi=600, bbox_inches='tight', pad_inches=0)
    plt.close(fig)

5.绘制结果展示
在这里插入图片描述
6.雷达小常识
1.在国内,我们最常见到和使用的气象雷达,是新一代多普勒天气雷达(CINRAD)。我们在气象局之类建筑楼顶上见到的那些球形建筑,大都属于这一种雷达。这种雷达可以探测反射率因子、多普勒径向速度、谱宽等基本气象要素,从而为短临尺度上的天气预报和预警提供数据支撑。特别是雷达反射率数据,因为其与强对流天气系统直接相关,最常被大家使用。
达数据在日常业务科研中的应用非常多,比如雷达数据可以用于数值模式同化中,为数值模式提供一个更加准确的初始场;基于雷达反射率数据的雷达短临预报系统可以预报未来2小时内,雷达探测范围内的强对流天气。例如,眼控科技自主研发的基于深度学习的AI对流临近预报系统就是利用雷达反射率数据,对未来两小时之内强对流天气,进行准确的预报。看了一下,下面的这个预报效果确实很好

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1705441.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

盘点10大灵动惊艳小演员❗谁是你的心头好?

盘点国内影视那些惊艳观众的小演员们无疑为影视作品注入了新的活力。以下是10个备受赞誉的小演员: 1.韩昊霖:凭借在《我和我的祖国》和《庆余年》中的出色表现 韩昊霖的演技赢得了观众和业界的广泛认可 他能够准确地把握角色的情感和细节,展…

STM32_USART

1、USART简介 USART,即Universal Synchronous/Asynchronous Receiver/Transmitter,通用同步/异步收发器。USART是STM32内部集成的硬件外设,可根据数据寄存器的一个字节数据自动生成数据帧时序,从TX引脚发送出去,也可自…

claude3国内API接口对接

众所周知,由于地理位置原因,Claude3不对国内开放,而国内的镜像网站使用又贵的离谱! 因此,团队萌生了一个想法:为什么不创建一个一站式的平台,让用户能够通过单一的接口与多个模型交流呢&#x…

点云工具CloudCompare下载、安装与汉化

一、下载 软件免费开源,所以可以直接在官网下载,官网地址: CloudCompare - Open Source project 进入官网后,点击菜单栏【Download】 选择合适系统进行下载 二、安装 常规软件安装流程即可 三、汉化 打开软件后,…

社交媒体数据恢复:微信电话本

首先,请确保您的微信已登录,并且您具有管理员权限。接下来,按照以下步骤进行操作: 第一步:备份微信数据 在进行数据恢复之前,建议您先备份微信数据。这可以帮助您在数据丢失的情况下更好地保护您的微信数据…

成都百洲文化传媒有限公司引领电商服务新风尚

在当今数字化时代,电商行业正以前所未有的速度蓬勃发展,而在这个充满机遇与挑战的领域中,成都百洲文化传媒有限公司以其专业的电商服务,成为了行业的佼佼者。作为一家专注于电商服务的传媒公司,百洲文化不仅为商家提供…

NDK下载与配置以及遇到的问题

通过 Android Studio进行下载或者官网下载,下面是在 androidStudio中下载在项目中配置ndk 菜单栏点开 File-》Project Structure,可以看到配置好的ndk配置ndk的系统环境变量,系统变量 -> 新建一个变量名为 NDK_HOME -> 变量值为文件路…

新旅程:类与对象的魔法课堂

🎉🎉🎉欢迎莅临我的博客空间,我是池央,一个对C和数据结构怀有无限热忱的探索者。🙌 🌸🌸🌸这里是我分享C/C编程、数据结构应用的乐园✨ 🎈🎈&…

AI大模型在测试中的深度应用与实践案例

文章目录 1. 示例项目背景2. 环境准备3. 代码实现3.1. 自动生成测试用例3.2. 自动化测试脚本3.3. 性能测试3.4. 结果分析 4. 进一步深入4.1. 集成CI/CD管道4.1.1 Jenkins示例 4.2. 详细的负载测试和性能监控4.2.1 Locust示例 4.3. 测试结果分析与报告 5. 进一步集成和优化5.1. …

RK3588 camera驱动总结二之图像格式

camera驱动中很重要的一个设置就是格式,此文来看看这块。 在驱动中有个重要的参数mbus-code,即Media Bus Pixel Codes,它描述的是用于在物理总线上传输的格式,比如 sensor 通过mipi dphy 向 isp 传输的图像格式,或者在…

AI预测体彩排3采取888=3策略+和值012路一缩定乾坤测试5月28日预测第4弹

今天继续基于8883的大底进行测试,今天继续测试,好了,直接上结果吧~ 首先,888定位如下: 百位:3,4,2,5,0,7,8,9 十位:3,2,4,1,6,7,8,9 个位:0,1,2,3,4,5,6,7 …

如果你使用vscode的ssh插件远程连接不了服务器,解决办法如下

CtrlShiftP打开命令面板,在命令面板中输入setting,选择User Settings 在页面中配置"remote.SSH.useLocalServer": true,保存重启后再重新连接就好了 再次连接就可以输入密码连接了

YOLOv5改进 | 卷积模块 | 提高网络的灵活性和表征能力的动态卷积【附代码+小白可上手】

💡💡💡本专栏所有程序均经过测试,可成功执行💡💡💡 轻量级卷积神经网络由于其低计算预算限制了CNNs的深度(卷积层数)和宽度(通道数),…

手机号码携号转网查询保障用户权益、信息透明、优化用户体验

携号转网服务是指在同一本地网范围内,蜂窝移动通信用户(不含物联网用户)变更签约的基础电信业务经营者而用户号码保持不变的一项服务。近年来,随着通信行业的不断发展,携号转网服务已成为满足用户个性化需求、提升服务…

使用nexus搭建的nodejs私库,定期清理无用的npm组件,彻底释放磁盘空间

一、背景 昨天我们整理了一篇关于docker私库,如何定期清理以释放磁盘空间的文章。 虽然也提及了npm前端应用的组件该如何定期清理的,本文是对它作一个补充说明。 前文也看到了,npm组件占用的blob空间为180多GB,急需清理。 二、…

给pdf加水印,python实现

from PyPDF2 import PdfReader, PdfWriterdef add_watermark(pdf_file_in, pdf_file_mark, pdf_file_out):"""把水印添加到pdf中"""pdf_output PdfWriter()input_stream open(pdf_file_in, rb)pdf_input PdfReader(input_stream, strictFalse…

111.二叉树的最小深度

给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 返回它的最小深度 2. 思路: 后序遍历(左右中&#xff…

Mybatis预编译

想要看到sql语句有没有执行, 可以用过日志去查看 在properties中打开 使用 stdout 是向控制台输出 #日志开启,sql ,mybatis mybatis.configuration.log-implorg.apache.ibatis.logging.stdout.StdOutImpl

【Beyond Compare】专业的文件对比工具

一、Beyond Compare官方下载 二、Beyond Compare简介 三、Beyond Compare 4激活 一、Beyond Compare官方下载 Beyond Compare官方下载https://www.beyondcompare.cc/ Beyond Compare 4中文包 链接:https://pan.baidu.com/s/14igdUm0Xy7DFp4Jzb58AZg?pwdGLNG 提取码…

Clickhouse MergeTree 存储引擎架构总结——Clickhouse 架构篇(二)

文章目录 前言MergeTree存储引擎的三大特点MergeTree 的数据组织MergeTree的文件组织数据文件、元数据文件、索引文件和其他文件分区数据库和表 索引与事务数据库存储引擎的对比存储引擎如何影响查询速度MergeTree存储引擎的工作过程 前言 存储引擎是ClickHouse非常重要的一个…