A comprehensive demonstration of cloud-native weather radar analysis using modern Python data science tools and NEXRAD Level II radar data. This repository showcases the power of the Radar DataTree approach for transforming scattered radar files into unified, analysis-ready datasets.
This project demonstrates the transformation from scattered radar files to unified, analysis-ready datasets using the Radar DataTree approach. Instead of managing thousands of individual files, work with a single, time-aware, cloud-native structure for seamless radar data analysis.
Part of the Earth Mover ecosystem for cloud-native geoscience data.
- Cloud-native radar data processing with Zarr v3 and Icechunk
- Distributed computing with Dask/Coiled for scalable analysis
- Quasi-Vertical Profile (QVP) analysis following Ryzhkov et al. (2016)
- Quantitative Precipitation Estimation (QPE) using Z-R relationships
- Interactive visualizations with hvplot and datashader
- Rainfall accumulation animations with time-series integration
- Radar: KVNX (Norman, Oklahoma)
- Period: May 2011 (severe weather outbreak month)
- Event: May 20, 2011 severe weather precursor
- Data Size: ~765GB of analysis-ready radar data
- Coverage: Multiple Volume Coverage Patterns (VCPs)
Create the conda environment:
conda env create -f environment.yml
conda activate raw2zarrOpen and run the main demonstration notebook:
jupyter lab radar-demo.ipynbThe notebook demonstrates:
- Traditional vs DataTree approaches - file-by-file pain vs unified datasets
- Cloud platform connection - Arraylake/Earthmover authentication
- Distributed computing setup - Coiled cluster configuration
- Time-series navigation - effortless severe weather event extraction
- QVP analysis - storm structure and evolution visualization
- QPE computation - rainfall estimation using radar reflectivity
- Animation creation - temporal rainfall accumulation visualization
- Storm structure analysis with polarimetric QVP profiles
- Precipitation estimation for hydrological studies
- Real-time monitoring of severe weather events
- Climate-scale studies with multi-year radar datasets
- Machine learning training data preparation
βββ radar-demo.ipynb # Main demonstration notebook
βββ demo_functions.py # Core radar analysis functions
βββ environment.yml # Conda environment specification
βββ CLAUDE.md # Project guidance for Claude Code
βββ README.md # This file
- From 6,123 files β 1 unified dataset
- QVP computation: ~2.4 seconds (vs hours traditionally)
- >100x speedup in radar data processing
- 3 lines of code vs hundreds for traditional approaches
This demonstration is part of ongoing research in cloud-native weather radar data processing. For questions or contributions, please open an issue.
This project is released under the MIT License.
Powered by: Radar DataTree β’ Xarray β’ Zarr β’ Icechunk β’ Arraylake β’ Dask/Coiled