Dieses technische Tutorial zeigt, wie Entwickler und Meteorologen mit der Python-Bibliothek Herbie meteorologische Modelldaten des HRRR (High-Resolution Rapid Refresh)-Modells effizient abrufen und visualisieren können. Am Beispiel einer historischen Wetterlage vom 19. April 2023 wird demonstriert, wie GRIB2-Daten von Amazon Web Services (AWS) geladen, mittels xarray verarbeitet und über Cartopy sowie Matplotlib als hochauflösende Karte der atmosphärischen Gesamt-Reflektivität (Composite Reflectivity in dBZ) inklusive US-Landkreisgrenzen dargestellt werden. Der gezeigte Workflow ermöglicht die präzise Analyse von Sturmvorhersagen mit minimalem Programmieraufwand.
Wichtigste Punkte & Zeitstempel
0:00 Einführung in Herbie: Vorstellung des Open-Source-Python-Pakets Herbie, das den automatisierten Zugriff auf diverse numerische Wettervorhersagemodelle erleichtert und die manuelle Suche nach Datenquellen überflüssig macht.
1:04 Import der meteorologischen Toolchain: Einbindung essenzieller Python-Bibliotheken für Geodatenverarbeitung und Visualisierung, darunter Cartopy für Kartenprojektionen, Matplotlib für das Plotten, xarray zur Datenmanipulation sowie Zeit- und Geospatial-Hilfsklassen.
1:57 Parametrisierung des Modelllaufs: Festlegung der zeitlichen und räumlichen Parameter für das Fallbeispiel vom April 2023. Definiert werden die HRRR-Modellinitialisierung (19. April 2023, 18:00 UTC), der Vorhersagehorizont (F06, d. h. 6 Stunden Vorhersagezeit bis zum 20. April 2023, 00:00 UTC) und eine geografische Bounding-Box für das Zielgebiet (Oklahoma/Texas).
3:15 Automatisierter Daten-Download: Initialisierung des Herbie-Objekts für das HRRR-Modell und automatischer Abruf der GRIB2-Oberflächendaten von den Servern von Amazon Web Services (AWS). Für die Verarbeitung im Hintergrund wird das Paket cfgrib benötigt.
3:56 Extraktion der Composite Reflectivity: Selektion des Parameters für die atmosphärische Gesamt-Reflektivität (composite reflectivity entire atmosphere) über xarray und Bereinigung ungenutzter Ein-Punkt-Dimensionen mittels der .squeeze()-Methode.
5:10 Bereinigung der Längengrade: Konvertierung der Modell-Längengrade aus dem herkömmlichen 0-to-360-Grad-Format in das Standardformat von -180 bis +180 Grad mittels Modulo-Arithmetik (lon + 180 % 360 - 180), um Kompatibilitätsprobleme beim Plotten zu vermeiden.
5:41 Setup der Kartenprojektion: Erstellung der Matplotlib-Kartenstruktur unter Verwendung der äquidistanten Zylinderprojektion (Plate-Carrée-Projektion, ccrs.PlateCarree()) und Einschränkung des sichtbaren Bereichs auf die vordefinierten Koordinatengrenzen.
6:53 Overlay geografischer Features: Einbindung hochauflösender Vektordaten für US-Landkreisgrenzen (US Counties) und US-Bundesstaaten aus Cartopy zur geografischen Orientierung.
7:07 Visualisierung der Reflektivitätsdaten: Anwendung der offiziellen Farbtabelle des National Weather Service (NWS) für Radarreflektivitäten (NWS storm clear reflectivity) und Generierung des Plots über die Methode pcolormesh.
8:33 Finale Bildausgabe: Erzeugung der finalen Plot-Ausgabe, die eine markante Superzelle an der Grenze zwischen Oklahoma und Texas zeigt, inklusive einer skalierten Farblegende in Dezibel (dBZ).
Glossar
HRRR (High-Resolution Rapid Refresh): Ein hochauflösendes, stündlich aktualisiertes numerisches Wettervorhersagemodell des US-amerikanischen Wetterdienstes (NWS/NOAA) mit einer horizontalen Gitterpunktauflösung von 3 km. Im Video umgangssprachlich „her“ ausgesprochen.
Herbie: Eine Python-Bibliothek, die das Suchen, Herunterladen und Einlesen von meteorologischen Modelldaten (wie HRRR, GFS, RAP) aus Cloud-Speichern (z. B. AWS, Google Cloud) vereinfacht.
Composite Reflectivity (Gesamt-Reflektivität): Der maximale Radarreflektivitätswert, der in einer vertikalen Spalte der Atmosphäre gemessen oder modelliert wird. Er dient zur Identifikation der intensivsten Kernbereiche von Niederschlag und Gewitterzellen.
dBZ (Dezibel des Reflexionsfaktors Z): Eine logarithmische Maßeinheit, die in der Radarmeteorologie verwendet wird, um die Intensität von Niederschlag zu beschreiben. Höhere Werte (z. B. >50 dBZ) deuten auf Starkregen oder Hagel hin.
xarray: Eine leistungsstarke Python-Bibliothek für die Arbeit mit mehrdimensionalen, annotierten Arrays und Datensätzen (wie NetCDF- und GRIB-Dateien).
Cartopy: Ein Python-Paket zur Erstellung von Landkarten und zur Transformation von Geodaten zwischen verschiedenen Koordinatenreferenzsystemen (CRS).
Plate-Carrée-Projektion: Eine einfache, zylindrische Kartenprojektion, bei der die Längen- und Breitengrade direkt als kartesische X- und Y-Koordinaten interpretiert werden.
GRIB2 (General Regularly-distributed Information in Binary): Ein standardisiertes binäres Datenformat der Weltorganisation für Meteorologie (WMO) zur Speicherung und Übertragung von gerasterten Wetterdaten.