前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >震惊!雷达数据绘图居然能白化

震惊!雷达数据绘图居然能白化

作者头像
用户11172986
发布2024-06-20 18:20:38
670
发布2024-06-20 18:20:38
举报
文章被收录于专栏:气python风雨气python风雨

01 前言

有读者私信问想要单独绘制一个省的雷达数据。 实际上是比较容易的,目前cnmaps加上pycinrad即可解决

02 温馨提示

由于可视化代码过长隐藏,可前往震惊!雷达数据绘图居然能白化

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

In [1]:

代码语言:javascript
复制
代码语言:javascript
复制
!pip install cnmaps -i https://pypi.mirrors.ustc.edu.cn/simple/
代码语言:javascript
复制
代码语言:javascript
复制
代码语言:javascript
复制
代码语言:javascript
复制
代码语言:javascript
复制
import netCDF4 as nc
import numpy as np
import matplotlib.pyplot as plt
import cartopy.crs as ccrs
from matplotlib.colors import LightSource
import cmaps
from cnmaps import get_adm_maps, draw_maps,clip_contours_by_map
from cartopy.mpl.gridliner import LATITUDE_FORMATTER, LONGITUDE_FORMATTER
import cinrad
from cinrad.io import CinradReader, StandardData
代码语言:javascript
复制

03 数据读取

In [3]:

代码语言:javascript
复制
代码语言:javascript
复制
def load_dem_data(file_path):
    """加载地形高程数据"""
    ds = nc.Dataset(file_path)
    _lon = ds.variables['LON'][:]
    _lat = ds.variables['LAT'][:]
    _dem = ds.variables['elevation'][:]
    return _lon, _lat, _demdef process_dem_data(_lon, _lat, _dem, lon_range, lat_range):
    """处理地形高程数据"""
    lon = _lon[lon_range[0]:lon_range[1]]
    lat = _lat[lat_range[0]:lat_range[1]]
    dem = _dem[lat_range[0]:lat_range[1], lon_range[0]:lon_range[1]]
    return lon, lat, demfile_path = '/home/mw/input/china_dem3276/cldasgrid_dem.nc'f = CinradReader("/home/mw/input/data5692/Z_RADR_I_Z9250_20200612054800_O_DOR_SA_CAP.bin")V = f.get_data(5, 230, 'VEL')lon, lat, dem = load_dem_data(file_path)lon_range = (4500 ,5500)lat_range = (1500, 2100)lon, lat, dem = process_dem_data(lon, lat, dem, lon_range, lat_range)

读取的雷达变量结构如下

代码语言:javascript
复制
代码语言:javascript
复制
---------------------------------------------------------------------------NameError                                 Traceback (most recent call last)<ipython-input-9-8a3e7747bd51> in <module>      6       7 #convert the geometry of a single polygon in your gdf (adjust the index, [0], to match the row of the dataframe you care about)----> 8 geom = geometry.Geometry(      9             gdf.geometry.values[0].__geo_interface__, geometry.CRS(     10                 'epsg:4326'))NameError: name 'geometry' is not defined

04 白化前

05 白化后

谢谢观看

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档