Spaces:
Runtime error
Runtime error
| title: Wave Visualizer | |
| emoji: π | |
| colorFrom: blue | |
| colorTo: green | |
| sdk: docker | |
| app_port: 7860 | |
| pinned: false | |
| license: gpl-3.0 | |
| short_description: Real-time wave data with interactive visualization | |
| # Wave Visualizer π | |
| A real-time global wave data visualization tool that fetches wave height, direction, and period data from NOAA and displays it using interactive Leaflet maps with velocity particle physics. | |
| ## Features | |
| - **Real-time Wave Data**: Fetches current wave conditions from NOAA Wave Watch 3 model | |
| - **Interactive Visualization**: Leaflet map with particle animation showing wave movement | |
| - **Global Coverage**: Supports Atlantic, Pacific, and Arctic regions | |
| - **Velocity Particles**: Animated particles that move according to wave direction and speed | |
| - **Color-coded Heights**: Wave heights visualized with color gradients | |
| - **Adjustable Parameters**: Control particle count, speed, and lifespan | |
| ## Data Sources | |
| - NOAA Wave Watch 3 (WW3) Model | |
| - ECMWF Open Data | |
| - GRIB file processing with xarray and cfgrib | |
| ## Usage | |
| The application automatically fetches wave data every hour and displays it on an interactive map. Use the controls to adjust the particle animation parameters: | |
| - **Particle Count**: Number of particles to display (100-5000) | |
| - **Particle Speed**: Animation speed multiplier (0.1-5.0) | |
| - **Particle Life**: How long particles live before respawning (10-200 frames) | |
| ## Wave Height Color Scale | |
| - π΅ Blue: 0-1m (calm seas) | |
| - π’ Green: 1-2m (light seas) | |
| - π‘ Yellow: 2-4m (moderate seas) | |
| - π Orange: 4-6m (rough seas) | |
| - π΄ Red: 6+m (very rough seas) | |
| ## Development | |
| Built with: | |
| - Python 3.10 | |
| - Flask for API server | |
| - Leaflet.js for mapping | |
| - HTML5 Canvas for particle animation | |
| - Docker for deployment | |