This notebook describes how to access and use the zarr-version of the RadKlim dataset. The dataset includes hourly accumulated rainfall and five-minute rain-rate data over Germany, which is derived from the German Weather Service (DWD) radar network. The RadKlim dataset has been extended annually since the first version released in 2017 (covering 2001-2017). The the v0.1.1 zarr version of the dataset includes up to Extension 6, covering 2001-2023.
The dataset was created by processing the netCDF files for the hourly and five-minute precipitation data into two separate zarr datasets which are described below. The processing was done with code hosted on https://
import matplotlib.pyplot as plt
import cartopy.crs as ccrs
import mlcast_datasets
mlcast_datasets.__version__'0.3.0.post1+g40465eeaa'
# open the mlcast datasets intake catalog
cat = mlcast_datasets.open_catalog()
list(cat.precipitation)['radklim_hourly',
'radklim_5_minutes',
'dmi_10_minutes',
'it_dpc_sri_5min',
'uk_metoffice_5min',
'be_rmi_radclim_mfb_5min']
5-minute rainfall amount¶
One part of RadKlim is the hourly rainfall amount which is available in the intake catalog as radklim_hourly.
ds = cat.precipitation.radklim_5_minutes.to_dask()
dsvar_name = "rainfall_amount"
crs_name = ds[var_name].grid_mapping
data_crs = ccrs.Projection(ds[crs_name].crs_wkt)
g = (
ds[var_name]
.sel(time="2010-01-02")
.isel(time=slice(None, 2))
.plot(
transform=data_crs,
cmap="viridis",
add_colorbar=True,
col="time",
robust=True,
subplot_kws=dict(projection=data_crs),
)
)
for ax in g.axes.flat:
ax.coastlines()
ax.gridlines(draw_labels=["top", "left"])/tmp/ipykernel_2683/839515734.py:20: FutureWarning: self.axes is deprecated since 2022.11 in order to align with matplotlibs plt.subplots, use self.axs instead.
for ax in g.axes.flat:

Hourly rainfall amount¶
ds = cat.precipitation.radklim_hourly.to_dask()
dsvar_name = "rainfall_amount"
crs_name = ds[var_name].grid_mapping
data_crs = ccrs.Projection(ds[crs_name].crs_wkt)
g = (
ds[var_name]
.sel(time="2010-01-02")
.isel(time=slice(None, 2))
.plot(
transform=data_crs,
cmap="viridis",
add_colorbar=True,
col="time",
robust=True,
subplot_kws=dict(projection=data_crs),
)
)
for ax in g.axes.flat:
ax.coastlines()
ax.gridlines(draw_labels=["top", "left"])/tmp/ipykernel_2683/839515734.py:20: FutureWarning: self.axes is deprecated since 2022.11 in order to align with matplotlibs plt.subplots, use self.axs instead.
for ax in g.axes.flat:
