Radarx#
[1]:
import radarx as rx
import xradar as xd
import cmweather # noqa
import cartopy.crs as ccrs
from datetime import datetime
[2]:
def filter_radar(ds):
ds = ds.where((ds.reflectivity >= 0) & (ds.reflectivity <= 70))
return ds
Grid Setup#
[3]:
x_lims = (-300e3, 250e3)
y_lims = (-250e3, 300e3)
z_lims = (0, 15e3)
h_res = 2000
v_res = 500
Load data#
[4]:
filename = "KSGF20180612_083109_V06.nc"
[5]:
dtree = xd.io.open_cfradial1_datatree(filename)
[6]:
dtree = rx.utils.combine_nexrad_sweeps(dtree)
[7]:
dtree = dtree.xradar.map_over_sweeps(filter_radar)
[8]:
dtree = dtree.xradar.georeference()
dtree.groups
[8]:
('/',
'/sweep_0',
'/sweep_1',
'/sweep_2',
'/sweep_3',
'/sweep_4',
'/sweep_5',
'/sweep_6',
'/sweep_7',
'/sweep_8',
'/sweep_9',
'/sweep_10',
'/sweep_11',
'/sweep_12',
'/sweep_13',
'/radar_parameters',
'/georeferencing_correction',
'/radar_calibration')
[9]:
dtree["sweep_0"]["reflectivity"].plot(
x="x",
y="y",
xlim=(-300e3, 200e3),
ylim=(-200e3, 300e3),
cmap="ChaseSpectral",
levels=range(-10, 70),
)
[9]:
<matplotlib.collections.QuadMesh at 0x7fce06aea600>
Radarx#
[10]:
tstart = datetime.now()
ds_rx = dtree.radarx.to_grid(
data_vars=["reflectivity"],
pseudo_cappi=False,
x_lim=x_lims,
y_lim=y_lims,
z_lim=z_lims,
x_step=h_res,
y_step=h_res,
z_step=v_res,
x_smth=0.2,
y_smth=0.2,
z_smth=0.6,
)
print("Radarx gridding took:", datetime.now() - tstart)
display(ds_rx)
Radarx gridding took: 0:00:11.247278
<xarray.Dataset> Size: 9MB Dimensions: (z: 31, y: 276, x: 276) Coordinates: * z (z) float64 248B 0.0 500.0 1e+03 ... 1.4e+04 1.45e+04 1.5e+04 lat (y) float64 2kB 34.94 34.95 34.97 34.99 ... 39.87 39.88 39.9 lon (x) float64 2kB -96.68 -96.66 -96.64 ... -90.53 -90.5 -90.48 latitude float64 8B 37.24 longitude float64 8B -93.4 altitude float64 8B 419.0 crs_wkt int64 8B 0 * x (x) float64 2kB -3e+05 -2.98e+05 ... 2.48e+05 2.5e+05 * y (y) float64 2kB -2.5e+05 -2.48e+05 ... 2.98e+05 3e+05 Data variables: reflectivity (z, y, x) float32 9MB nan nan nan nan nan ... nan nan nan nan time datetime64[ns] 8B 2018-06-12T08:33:44.780257189 Attributes: Conventions: CF/Radial instrument_parameters version: 1.3 title: institution: references: source: comment: instrument_name: KSGF history: radar_name: KSGF
Plot#
[11]:
ds_rx.radarx.plot_max_cappi(
data_var="reflectivity",
vmin=-10,
vmax=70,
range_rings=True,
add_map=True,
projection=ccrs.PlateCarree(),
title="Radarx",
)
[11]:
[ ]: