Skip to content

🌊 EasyMap is an automated flood forecast mapping tool that combines real-time hydrological data from the Copernicus GloFAS API with local water station data to visualize and assess flood risks across Germany. It automatically downloads, processes, and enhances forecast data into GeoJSON format for seamless GIS or web integration.

License

Notifications You must be signed in to change notification settings

sherlock2215/EasyMap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

37 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌊 EasyMap β€” Automated Flood Forecast Visualization

EasyMap is a fully automated pipeline that downloads real-time river discharge forecasts from the Copernicus GloFAS API and combines them with local water station data to generate an enhanced GeoJSON map showing flood risk levels.


πŸš€ Features

  • πŸ”„ Automatic Data Retrieval β€” Downloads the latest GloFAS forecast daily.
  • 🌍 GeoJSON Output β€” Produces ready-to-visualize maps for GIS or web apps.
  • πŸ“Š Hydrological Forecast Integration β€” Merges real discharge predictions into station-level analysis.
  • 🧠 Easy Customization β€” Simple to extend to other countries or bounding boxes.
  • πŸ•“ Supports Automation β€” Can run daily via Windows Task Scheduler or cron.

🧩 Project Structure

EasyMap/
β”‚
β”œβ”€β”€ main.py                        # Main automation script
β”œβ”€β”€ map.py                         # Handles GeoJSON + data enhancement
β”œβ”€β”€ grbtopdf.py                    # GRIB debugging / inspection tool
β”œβ”€β”€ stations.json                  # Water station data (input)
β”œβ”€β”€ forecast.grib                  # GloFAS forecast (downloaded automatically)
β”œβ”€β”€ germany_waterlevels.geojson    # Base map
β”œβ”€β”€ germany_waterlevels_with_forecast.geojson  # Enhanced output map
β”œβ”€β”€ requirements.txt               # Dependencies
└── LICENSE                        # MIT license

βš™οΈ Installation

  1. Clone the repository

    git clone https://github.com/sherlock2215/EasyMap.git
    cd EasyMap
  2. Create a virtual environment (optional but recommended)

    python -m venv venv
    source venv/bin/activate   # on macOS/Linux
    venv\Scripts\activate    # on Windows
  3. Install dependencies

    pip install -r requirements.txt
  4. Install Copernicus CDS API key


▢️ Usage

Run the full automated analysis:

python main.py

This will:

  • Download the latest forecast.grib file.
  • Combine it with your water station data.
  • Generate an enhanced germany_waterlevels_with_forecast.geojson file.

πŸ•’ Automating Daily Runs

Windows (Task Scheduler)

  1. Open Task Scheduler
  2. Create a new task β†’ Run daily at 07:00
  3. Command:
    python "C:\Users\gosia\Downloads\EasyMap2\EasyMap\main.py"

Linux/macOS (cron)

0 7 * * * /usr/bin/python3 /path/to/main.py

🧾 Example Output

Example GeoJSON snippet:

{
  "station": "Berlin-Spree",
  "avg_discharge": 182.4,
  "flood_risk_category": "Moderate"
}

πŸͺͺ License

This project is licensed under the MIT License β€” see the LICENSE file for details.


πŸ‘¨β€πŸ’» Author

Sherlock2215
🌐 GitHub: @sherlock2215
πŸ“ Germany
πŸ’¬ Contributions and suggestions are welcome!

About

🌊 EasyMap is an automated flood forecast mapping tool that combines real-time hydrological data from the Copernicus GloFAS API with local water station data to visualize and assess flood risks across Germany. It automatically downloads, processes, and enhances forecast data into GeoJSON format for seamless GIS or web integration.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •