Filling the gaps between stations.
The heat map estimates air between stations by distance weighting, then drifts it with the current wind to sketch the next three hours. The check below shows how well that works on today's readings. This is a workbench for the curious, not an official DOE APIMS feed.
65 reporting now
Model validation
Each station is hidden in turn and estimated from all the others, then compared with what it actually reported. An R² near zero or below means the colours between stations are rough guesses today; trust the station dots over the shading.
- RMSE
- — API units
- MAE
- — API units
- R²
- — Variance explained
IDW power p = 2.0 (distance squared)C(x, y, t+Δt) = C(x − uΔt, y − vΔt, t)Validation needs the live station feed, which is not available right now.
Trained on Klang Valley records from January 2023 to mid-2024 and tested on September to December 2024, which it never saw.
| Model | MAE (µg/m³) | RMSE | R² | Status |
|---|---|---|---|---|
| Persistence Baseline | 12.194 | 17.425 | 0.203 | Baseline |
| Linear Regression | 9.803 | 13.323 | 0.534 | Baseline |
| Random Forest | 7.602 | 10.787 | 0.695 | Tested |
| XGBoost (Application) | 7.462 | 10.558 | 0.707 | In use |
Typical day (illustration)
An illustrative scenario, not observed history and not a forecast.Now —
Reports submitted through HazeMY appear here once the application receives them. They are logged apart from network readings and never feed the interpolation.