diff --git a/docs/03 - Premiers graphiques/index.md b/docs/03 - Premiers graphiques/index.md index 32b44ab..46d87b2 100644 --- a/docs/03 - Premiers graphiques/index.md +++ b/docs/03 - Premiers graphiques/index.md @@ -4,10 +4,6 @@ On peut désormais tracer nos premiers graphiques simples et bruts. S'ils ne sont pas très instructifs par rapport à ce que nous fournissent Home Assistant et InfluxDB, ils nous permettent au moins de nous assurer que tout fonctionne, et que les données semblent cohérentes. Les fichiers CSV correspondant à chaque figure sont conservés dans `data/` dans ce dossier. -Les graphiques couvrent maintenant toute la période disponible dans `data/weather_minutely.csv`. -Une agrégation automatique réduit le nombre de points pour rester lisible (plus de courbes "peignes"), et l'axe des dates utilise un format compact qui évite tout chevauchement de labels. -On peut au besoin restreindre la période avec `--days` ou imposer une fréquence d'agrégation avec `--resample`. - ```shell python "docs/03 - Premiers graphiques/scripts/plot_basic_variables.py" ``` @@ -30,9 +26,6 @@ python "docs/03 - Premiers graphiques/scripts/plot_basic_variables.py" ## Vues calendrier -Les vues calendrier permettent de visualiser, jour par jour, les cumuls ou moyennes quotidiennes sur la dernière année complète disponible. -Les images générées sont stockées dans `figures/calendar/` et les CSV correspondants dans `data/calendar/`. - ```shell python "docs/03 - Premiers graphiques/scripts/plot_calendar_overview.py" ``` @@ -48,5 +41,3 @@ python "docs/03 - Premiers graphiques/scripts/plot_calendar_overview.py" ![](figures/calendar/calendar_illuminance_2025.png) ![](figures/calendar/calendar_wind_2025.png) - -Ces vues, bien que simples en principe, mettent déjà mieux en évidence les fluctuations au cours du temps. diff --git a/docs/04 - Corrélations binaires/figures/correlation_heatmap.png b/docs/04 - Corrélations binaires/figures/correlation_heatmap.png index 50859c9..b1322d6 100644 Binary files a/docs/04 - Corrélations binaires/figures/correlation_heatmap.png and b/docs/04 - Corrélations binaires/figures/correlation_heatmap.png differ diff --git a/docs/04 - Corrélations binaires/figures/correlation_heatmap_abs.png b/docs/04 - Corrélations binaires/figures/correlation_heatmap_abs.png deleted file mode 100644 index 2ef8abb..0000000 Binary files a/docs/04 - Corrélations binaires/figures/correlation_heatmap_abs.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/correlation_heatmap_spearman.png b/docs/04 - Corrélations binaires/figures/correlation_heatmap_spearman.png index cdc4223..ccde0c0 100644 Binary files a/docs/04 - Corrélations binaires/figures/correlation_heatmap_spearman.png and b/docs/04 - Corrélations binaires/figures/correlation_heatmap_spearman.png differ diff --git a/docs/04 - Corrélations binaires/figures/correlation_heatmap_spearman_abs.png b/docs/04 - Corrélations binaires/figures/correlation_heatmap_spearman_abs.png deleted file mode 100644 index 9be52dc..0000000 Binary files a/docs/04 - Corrélations binaires/figures/correlation_heatmap_spearman_abs.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_illuminance.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_illuminance.png deleted file mode 100644 index e01f17f..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_illuminance.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_pressure.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_pressure.png deleted file mode 100644 index 70cd625..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_pressure.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_rain_rate.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_rain_rate.png deleted file mode 100644 index c17439e..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_rain_rate.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_sun_elevation.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_sun_elevation.png deleted file mode 100644 index 85986a1..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_sun_elevation.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_wind_direction.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_wind_direction.png deleted file mode 100644 index fe301ec..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_wind_direction.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_wind_speed.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_wind_speed.png deleted file mode 100644 index 55fe392..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_humidity_vs_wind_speed.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation.png deleted file mode 100644 index 1b65209..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_illuminance_vs_wind_direction.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_illuminance_vs_wind_direction.png deleted file mode 100644 index c472782..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_illuminance_vs_wind_direction.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_illuminance_vs_wind_speed.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_illuminance_vs_wind_speed.png deleted file mode 100644 index 7f07a7b..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_illuminance_vs_wind_speed.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_illuminance.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_illuminance.png deleted file mode 100644 index e212760..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_illuminance.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_rain_rate.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_rain_rate.png deleted file mode 100644 index 44f4bb9..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_rain_rate.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_sun_elevation.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_sun_elevation.png deleted file mode 100644 index b467851..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_sun_elevation.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_wind_direction.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_wind_direction.png deleted file mode 100644 index 5aaba59..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_wind_direction.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_wind_speed.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_wind_speed.png deleted file mode 100644 index 1f53557..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_pressure_vs_wind_speed.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_illuminance.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_illuminance.png deleted file mode 100644 index 0c5337a..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_illuminance.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation.png deleted file mode 100644 index 133baaf..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction.png deleted file mode 100644 index 62dd448..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed.png deleted file mode 100644 index b240634..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_humidity.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_humidity.png deleted file mode 100644 index cdebe69..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_humidity.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_illuminance.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_illuminance.png deleted file mode 100644 index 1f0f8c7..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_illuminance.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_pressure.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_pressure.png deleted file mode 100644 index b59358e..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_pressure.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_rain_rate.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_rain_rate.png deleted file mode 100644 index df2a64c..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_rain_rate.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_sun_elevation.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_sun_elevation.png deleted file mode 100644 index 1121c93..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_sun_elevation.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_wind_direction.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_wind_direction.png deleted file mode 100644 index 989e26e..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_wind_direction.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_wind_speed.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_wind_speed.png deleted file mode 100644 index 33604eb..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_temperature_vs_wind_speed.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation.png deleted file mode 100644 index 935fdc4..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation.png deleted file mode 100644 index bf89c1d..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction.png b/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction.png deleted file mode 100644 index e555e9a..0000000 Binary files a/docs/04 - Corrélations binaires/figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction.png and /dev/null differ diff --git a/docs/04 - Corrélations binaires/index.md b/docs/04 - Corrélations binaires/index.md index 527f374..7474848 100644 --- a/docs/04 - Corrélations binaires/index.md +++ b/docs/04 - Corrélations binaires/index.md @@ -60,74 +60,18 @@ python "docs/04 - Corrélations binaires/scripts/plot_pairwise_time_series.py" ![](figures/pairwise_timeseries/timeseries_wind_direction_vs_sun_elevation.png) -## Nuages de points - -```shell -python "docs/04 - Corrélations binaires/scripts/plot_all_pairwise_scatter.py" -``` - -![](figures/pairwise_scatter/scatter_humidity_vs_illuminance.png) - -![](figures/pairwise_scatter/scatter_humidity_vs_pressure.png) - -![](figures/pairwise_scatter/scatter_humidity_vs_rain_rate.png) - -![](figures/pairwise_scatter/scatter_humidity_vs_sun_elevation.png) - -![](figures/pairwise_scatter/scatter_humidity_vs_wind_direction.png) - -![](figures/pairwise_scatter/scatter_humidity_vs_wind_speed.png) - -![](figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation.png) - -![](figures/pairwise_scatter/scatter_illuminance_vs_wind_direction.png) - -![](figures/pairwise_scatter/scatter_illuminance_vs_wind_speed.png) - -![](figures/pairwise_scatter/scatter_pressure_vs_illuminance.png) - -![](figures/pairwise_scatter/scatter_pressure_vs_rain_rate.png) - -![](figures/pairwise_scatter/scatter_pressure_vs_sun_elevation.png) - -![](figures/pairwise_scatter/scatter_pressure_vs_wind_direction.png) - -![](figures/pairwise_scatter/scatter_pressure_vs_wind_speed.png) - -![](figures/pairwise_scatter/scatter_rain_rate_vs_illuminance.png) - -![](figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation.png) - -![](figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction.png) - -![](figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed.png) - -![](figures/pairwise_scatter/scatter_temperature_vs_humidity.png) - -![](figures/pairwise_scatter/scatter_temperature_vs_illuminance.png) - -![](figures/pairwise_scatter/scatter_temperature_vs_pressure.png) - -![](figures/pairwise_scatter/scatter_temperature_vs_rain_rate.png) - -![](figures/pairwise_scatter/scatter_temperature_vs_sun_elevation.png) - -![](figures/pairwise_scatter/scatter_temperature_vs_wind_direction.png) - -![](figures/pairwise_scatter/scatter_temperature_vs_wind_speed.png) - -![](figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation.png) - -![](figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation.png) - -![](figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction.png) - ## Matrices de corrélation (instantané, signé) +Le calcul des coefficients de Pearson et de Spearman peut nous donner une indication numérique des corrélations entre les différentes variables. +Cette information peut nous aiguiller sur des relations spécifiques (ou au contraire, nous induire en erreur...). + ```shell -python "docs/04 - Corrélations binaires/scripts/plot_correlation_heatmap.py" --transform absolute --upper-only +python "docs/04 - Corrélations binaires/scripts/plot_correlation_heatmap.py" --transform=identity --upper-only ``` -![](figures/correlation_heatmap_abs.png) +![](figures/correlation_heatmap.png) -![](figures/correlation_heatmap_spearman_abs.png) +![](figures/correlation_heatmap_spearman.png) + +Le signe et l'intensité des coefficients montrent à quel point deux variables bougent ensemble au même instant (co-mouvement linéaire pour Pearson, monotone pour Spearman). +Cette matrice sert donc surtout de carte globale : repérer rapidement les couples très corrélés ou indiquer un lien physique évident, mettre en alerte des variables à forte corrélation qui pourraient masquer d'autres effets (saisonnalité, cycle jour/nuit), et choisir quelles paires méritent qu'on teste des décalages temporels ou des relations non linéaires dans la suite. diff --git a/docs/04 - Corrélations binaires/scripts/plot_all_pairwise_scatter.py b/docs/04 - Corrélations binaires/scripts/plot_all_pairwise_scatter.py deleted file mode 100644 index 89d142f..0000000 --- a/docs/04 - Corrélations binaires/scripts/plot_all_pairwise_scatter.py +++ /dev/null @@ -1,52 +0,0 @@ -# scripts/plot_all_pairwise_scatter.py -from __future__ import annotations - -from pathlib import Path -import sys - - -PROJECT_ROOT = Path(__file__).resolve().parents[3] -if str(PROJECT_ROOT) not in sys.path: - sys.path.insert(0, str(PROJECT_ROOT)) - -from meteo.dataset import load_raw_csv -from meteo.variables import iter_variable_pairs -from meteo.plots import plot_scatter_pair - - -CSV_PATH = Path("data/weather_minutely.csv") -DOC_DIR = Path(__file__).resolve().parent.parent -OUTPUT_DIR = DOC_DIR / "figures" / "pairwise_scatter" - - -def main() -> None: - if not CSV_PATH.exists(): - print(f"⚠ Fichier introuvable : {CSV_PATH}") - return - - df = load_raw_csv(CSV_PATH) - print(f"Dataset minuté chargé : {CSV_PATH}") - print(f" Lignes : {len(df)}") - print(f" Colonnes : {list(df.columns)}") - - pairs = iter_variable_pairs() - print(f"Nombre de paires de variables : {len(pairs)}") - - for var_x, var_y in pairs: - filename = f"scatter_{var_x.key}_vs_{var_y.key}.png" - output_path = OUTPUT_DIR / filename - - print(f"→ Trace {var_y.key} en fonction de {var_x.key} → {output_path}") - plot_scatter_pair( - df=df, - var_x=var_x, - var_y=var_y, - output_path=output_path, - sample_step=10, # un point sur 10 : ≈ 32k points au lieu de 320k - ) - - print("✔ Tous les graphiques de nuages de points ont été générés.") - - -if __name__ == "__main__": - main() diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_illuminance.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_illuminance.png new file mode 100644 index 0000000..b3568d7 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_illuminance.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_pressure.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_pressure.png new file mode 100644 index 0000000..62cf3aa Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_pressure.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_rain_rate.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_rain_rate.png index 923db1e..c721438 100644 Binary files a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_rain_rate.png and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_rain_rate.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_sun_elevation.png new file mode 100644 index 0000000..b16d8d4 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_wind_direction.png new file mode 100644 index 0000000..796f80d Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_wind_speed.png new file mode 100644 index 0000000..3db54c2 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_humidity_to_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_sun_elevation.png new file mode 100644 index 0000000..526c909 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_temperature.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_temperature.png deleted file mode 100644 index e66cdc8..0000000 Binary files a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_temperature.png and /dev/null differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_wind_direction.png new file mode 100644 index 0000000..90a5851 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_wind_speed.png new file mode 100644 index 0000000..665cee3 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_illuminance_to_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_illuminance.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_illuminance.png index 3f68628..cf0a2cb 100644 Binary files a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_illuminance.png and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_illuminance.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_rain_rate.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_rain_rate.png index 5559058..cf0b7d2 100644 Binary files a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_rain_rate.png and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_rain_rate.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_sun_elevation.png new file mode 100644 index 0000000..2b3c6dd Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_wind_direction.png new file mode 100644 index 0000000..1b7f68e Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_wind_speed.png index 19df9a8..b632e8f 100644 Binary files a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_wind_speed.png and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_pressure_to_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_illuminance.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_illuminance.png new file mode 100644 index 0000000..ff55503 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_illuminance.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_sun_elevation.png new file mode 100644 index 0000000..68a3679 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_wind_direction.png new file mode 100644 index 0000000..8c940d6 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_wind_speed.png new file mode 100644 index 0000000..9383cc7 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_rain_rate_to_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_humidity.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_humidity.png index a7b4a82..69b9977 100644 Binary files a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_humidity.png and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_humidity.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_illuminance.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_illuminance.png new file mode 100644 index 0000000..647964f Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_illuminance.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_pressure.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_pressure.png new file mode 100644 index 0000000..a08b69f Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_pressure.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_rain_rate.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_rain_rate.png index 321a227..e89eb93 100644 Binary files a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_rain_rate.png and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_rain_rate.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_sun_elevation.png new file mode 100644 index 0000000..04ade6f Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_wind_direction.png new file mode 100644 index 0000000..bf526ca Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_wind_speed.png new file mode 100644 index 0000000..9787b19 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_temperature_to_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_wind_direction_to_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_wind_direction_to_sun_elevation.png new file mode 100644 index 0000000..a63c3b6 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_wind_direction_to_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_wind_speed_to_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_wind_speed_to_sun_elevation.png new file mode 100644 index 0000000..0b92715 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_wind_speed_to_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_wind_speed_to_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_wind_speed_to_wind_direction.png new file mode 100644 index 0000000..4835a11 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/lagged_correlations/lagcorr_wind_speed_to_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_illuminance.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_illuminance.png new file mode 100644 index 0000000..9b8fde8 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_illuminance.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_illuminance_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_illuminance_lagged.png new file mode 100644 index 0000000..dba783e Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_illuminance_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_pressure.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_pressure.png new file mode 100644 index 0000000..eabf29c Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_pressure.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_pressure_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_pressure_lagged.png new file mode 100644 index 0000000..f513df4 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_pressure_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_rain_rate.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_rain_rate.png new file mode 100644 index 0000000..7894bf0 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_rain_rate.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_rain_rate_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_rain_rate_lagged.png new file mode 100644 index 0000000..e2c05cd Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_rain_rate_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_sun_elevation.png new file mode 100644 index 0000000..ea56ea4 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_sun_elevation_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_sun_elevation_lagged.png new file mode 100644 index 0000000..86068c1 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_sun_elevation_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_direction.png new file mode 100644 index 0000000..0e252e2 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_direction_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_direction_lagged.png new file mode 100644 index 0000000..3cf828f Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_direction_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_speed.png new file mode 100644 index 0000000..d2e422d Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_speed_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_speed_lagged.png new file mode 100644 index 0000000..c5c39d8 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_humidity_vs_wind_speed_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_humidity_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_humidity_lagged.png new file mode 100644 index 0000000..71ca36b Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_humidity_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation.png new file mode 100644 index 0000000..5c4d5d6 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation_lagged.png new file mode 100644 index 0000000..e7d2cea Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_temperature_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_temperature_lagged.png new file mode 100644 index 0000000..27a9081 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_temperature_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_direction.png new file mode 100644 index 0000000..e5e907f Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_direction_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_direction_lagged.png new file mode 100644 index 0000000..0ccc70d Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_direction_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_speed.png new file mode 100644 index 0000000..1cfb967 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_speed_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_speed_lagged.png new file mode 100644 index 0000000..76f6527 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_illuminance_vs_wind_speed_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_illuminance.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_illuminance.png new file mode 100644 index 0000000..16c4cfb Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_illuminance.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_illuminance_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_illuminance_lagged.png new file mode 100644 index 0000000..15137e5 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_illuminance_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_rain_rate.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_rain_rate.png new file mode 100644 index 0000000..90880d2 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_rain_rate.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_rain_rate_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_rain_rate_lagged.png new file mode 100644 index 0000000..4515e0e Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_rain_rate_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_sun_elevation.png new file mode 100644 index 0000000..0e8cdf1 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_sun_elevation_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_sun_elevation_lagged.png new file mode 100644 index 0000000..264a8e5 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_sun_elevation_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_direction.png new file mode 100644 index 0000000..98bbcb3 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_direction_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_direction_lagged.png new file mode 100644 index 0000000..248b4a4 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_direction_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_speed.png new file mode 100644 index 0000000..d1946c1 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_speed_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_speed_lagged.png new file mode 100644 index 0000000..bb481d4 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_pressure_vs_wind_speed_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_illuminance.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_illuminance.png new file mode 100644 index 0000000..22b6e91 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_illuminance.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_illuminance_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_illuminance_lagged.png new file mode 100644 index 0000000..380d00a Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_illuminance_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation.png new file mode 100644 index 0000000..79f1056 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation_lagged.png new file mode 100644 index 0000000..7df9e4c Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction.png new file mode 100644 index 0000000..0a3df5f Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction_lagged.png new file mode 100644 index 0000000..be52683 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed.png new file mode 100644 index 0000000..665d33a Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed_lagged.png new file mode 100644 index 0000000..b28e86c Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_sun_elevation_vs_humidity_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_sun_elevation_vs_humidity_lagged.png new file mode 100644 index 0000000..ced4cd8 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_sun_elevation_vs_humidity_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_sun_elevation_vs_illuminance_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_sun_elevation_vs_illuminance_lagged.png new file mode 100644 index 0000000..d31dd46 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_sun_elevation_vs_illuminance_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_sun_elevation_vs_temperature_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_sun_elevation_vs_temperature_lagged.png new file mode 100644 index 0000000..8d9c78b Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_sun_elevation_vs_temperature_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_humidity.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_humidity.png new file mode 100644 index 0000000..f228d25 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_humidity.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_humidity_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_humidity_lagged.png new file mode 100644 index 0000000..f228d25 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_humidity_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_illuminance.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_illuminance.png new file mode 100644 index 0000000..6904b29 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_illuminance.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_illuminance_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_illuminance_lagged.png new file mode 100644 index 0000000..2e9193d Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_illuminance_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_pressure.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_pressure.png new file mode 100644 index 0000000..0dbbd95 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_pressure.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_pressure_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_pressure_lagged.png new file mode 100644 index 0000000..0e27249 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_pressure_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_rain_rate.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_rain_rate.png new file mode 100644 index 0000000..d198730 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_rain_rate.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_rain_rate_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_rain_rate_lagged.png new file mode 100644 index 0000000..214d96f Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_rain_rate_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_sun_elevation.png new file mode 100644 index 0000000..8756f11 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_sun_elevation_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_sun_elevation_lagged.png new file mode 100644 index 0000000..4dc1f23 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_sun_elevation_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_direction.png new file mode 100644 index 0000000..d21c02d Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_direction_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_direction_lagged.png new file mode 100644 index 0000000..be53b55 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_direction_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_speed.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_speed.png new file mode 100644 index 0000000..bc69cab Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_speed.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_speed_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_speed_lagged.png new file mode 100644 index 0000000..27161a9 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_temperature_vs_wind_speed_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation.png new file mode 100644 index 0000000..897ba54 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation_lagged.png new file mode 100644 index 0000000..10ce9cc Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation.png new file mode 100644 index 0000000..2a4157d Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation_lagged.png new file mode 100644 index 0000000..81efcf1 Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction.png new file mode 100644 index 0000000..3eb44ac Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction_lagged.png b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction_lagged.png new file mode 100644 index 0000000..3eb44ac Binary files /dev/null and b/docs/05 - Corrélations binaires avancées/figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction_lagged.png differ diff --git a/docs/05 - Corrélations binaires avancées/figures/rolling_correlations/rolling_correlation_heatmap.png b/docs/05 - Corrélations binaires avancées/figures/rolling_correlations/rolling_correlation_heatmap.png deleted file mode 100644 index 5afd191..0000000 Binary files a/docs/05 - Corrélations binaires avancées/figures/rolling_correlations/rolling_correlation_heatmap.png and /dev/null differ diff --git a/docs/05 - Corrélations binaires avancées/index.md b/docs/05 - Corrélations binaires avancées/index.md index 0fa2475..60b1aae 100644 --- a/docs/05 - Corrélations binaires avancées/index.md +++ b/docs/05 - Corrélations binaires avancées/index.md @@ -64,7 +64,7 @@ python "docs/05 - Corrélations binaires avancées/scripts/plot_lagged_correlati ### Interprétation -Ces graphiques sont désormais en corrélation signée (par défaut) et tracent des zones colorées symétriques pour les relations négatives/positives. Ils mettent en évidence la force, le sens et le décalage temporel entre deux variables. +Ces graphiques montrent la corrélation signée et tracent des zones colorées symétriques pour les relations négatives/positives. Ils mettent en évidence la force, le sens et le décalage temporel entre deux variables. Ainsi, il est clair qu'il existe une corrélation forte et immédiate entre la température et l'humidité relative. La corrélation entre température et luminance est également forte, mais elle est décalée : le pic de luminance précède le pic de température de près de deux heures. @@ -72,22 +72,176 @@ La corrélation entre température et luminance est également forte, mais elle Comme ces deux corrélations sont fortes, on en déduit que l'on devrait logiquement observer une corrélation forte et décalée entre la luminance et l'humidité relative (et c'est bien le cas, comme en témoigne le graphique correspondant). Un rapport similaire, quoique moins prononcé, existe entre la température, l'humidité relative et l'élévation solaire, puisque la luminance en dépend directement. -### Matrices de corrélation avec lag optimal par paire (depuis les CSV) +Ces relations pourraient être mieux mises en évidence à travers une matrice de corrélations par coefficient de Pearson. + +### Matrices de corrélation avec lag optimal par paire ```shell python "docs/05 - Corrélations binaires avancées/scripts/plot_lagged_correlation_heatmap_from_data.py" ``` -Cette heatmap est construite à partir des CSV `data/lagged_correlations`, en prenant pour chaque paire ordonnée (X → Y) le r maximal en |r| et le lag associé. Les lags (en minutes, signe conservé, y compris 0) sont annotés uniquement pour les corrélations d'intensité au moins « Modérée » (|r| ≥ 0,3) ; les PNG sont écrits dans `figures/` et les matrices correspondantes (`correlation_matrix_lagged.csv`, `lag_matrix_minutes.csv`) dans `data/`. +Cette heatmap est construite à partir des CSV `data/lagged_correlations`, en prenant pour chaque paire ordonnée (X → Y) le r maximal en |r| et le lag associé. Les lags (en minutes, signe conservé, y compris 0) sont annotés uniquement pour les corrélations d'intensité au moins « Modérée » (|r| ≥ 0,3). ![](figures/correlation_heatmap_lagged.png) -Cette matrice met en évidence les plus fortes corrélations et leur décalage optimal. +Cette matrice met en évidence les plus fortes corrélations et leur décalage optimal (exprimé en minutes). -## Corrélations glissantes +Il est important de souligner que ces décalages ne sont pas transitifs. +Chaque case correspond au décalage qui maximise la corrélation X→Y calculée directement sur les deux signaux ; on n’obtient pas un « décalage absolu » que l’on pourrait soustraire ou additionner via une troisième variable. +Deux couples peuvent avoir des pics de corrélation à des lags voisins ou différents selon la forme du signal, le bruit, l’inertie physique ou la résolution (pas de 10 minutes). +Pour connaître le décalage entre deux variables, il faut donc regarder leur case spécifique dans la matrice : on ne peut pas l'inférer des relations entre trois variables. + +### Nuages de points ```shell -python "docs/05 - Corrélations binaires avancées/scripts/plot_rolling_correlation_heatmap.py" +python "docs/05 - Corrélations binaires avancées/scripts/plot_all_pairwise_scatter.py" ``` -![](figures/rolling_correlations/rolling_correlation_heatmap.png) +On affiche les nuages bruts pour toutes les paires. Si le lag optimal est strictement positif et que |r| ≥ 0,3 (d’après `data/lag_matrix_minutes.csv` et `data/correlation_matrix_lagged.csv`), on ajoute une version décalée Y(t+lag). Les paires qui franchissent ce seuil actuellement : + +#### Luminance → Température (lag +130 min) + +![](figures/pairwise_scatter/scatter_temperature_vs_illuminance.png) + +Sans lag, la luminance croît globalement avec la température (r ~ 0,51), mais le nuage reste étalé avec un gros paquet nocturne à luminance nulle sur une large plage de températures ; la coloration temporelle montre aussi que les points récents (été) concentrent les températures les plus élevées pour une même luminance. + +![](figures/pairwise_scatter/scatter_temperature_vs_illuminance_lagged.png) + +Décalage +130 min : le nuage se resserre (r ~ 0,59) et la pente croissante devient plus homogène, signe que le réalignement temporel renforce le signal plutôt qu'il ne le déforme. + +#### Élévation solaire → Température (lag +150 min) + +![](figures/pairwise_scatter/scatter_temperature_vs_sun_elevation.png) + +Sans décalage, l’élévation solaire et la température montent ensemble (r ~ 0,47), mais le nuage dessine un « 8 » : pour une même élévation modérée, la branche du matin est nettement plus froide que celle du soir, et la coloration temporelle montre que les périodes récentes (été) maintiennent des températures élevées jusqu’à des élévations plus faibles. + +![](figures/pairwise_scatter/scatter_temperature_vs_sun_elevation_lagged.png) + +Avec +150 min, la boucle se referme (r ~ 0,56) : les deux branches se rapprochent et la pente positive devient plus lisible, tout en conservant la trace du double trajet matin/soir (forme de « 8 ») et du maintien de températures élevées sur une plage plus large en été. + +#### Luminance → Humidité relative (lag +140 min) + +![](figures/pairwise_scatter/scatter_humidity_vs_illuminance.png) + +L'humidité est élevée dès que la luminance est faible puis baisse quand la lumière augmente (r ~ -0,52), avec beaucoup de points autour de 80–100 % pour des luminances proches de zéro. + +![](figures/pairwise_scatter/scatter_humidity_vs_illuminance_lagged.png) + +Le décalage de +140 min renforce nettement cette anti-corrélation (r ~ -0,63) et fait ressortir deux poches distinctes : luminance < 40 k lux associée à une humidité élevée (médiane ~82 %) et luminance 60–100 k lux associée à une humidité nettement plus basse (médiane ~46 %). + +#### Élévation solaire → Humidité relative (lag +170 min) + +![](figures/pairwise_scatter/scatter_humidity_vs_sun_elevation.png) + +L'humidité diminue quand l'élévation solaire augmente (r ~ -0,37), mais la dispersion reste forte, surtout aux basses élévations. + +![](figures/pairwise_scatter/scatter_humidity_vs_sun_elevation_lagged.png) + +Décaler de +170 min resserre le nuage (r ~ -0,50) et aplatit les courbes arrondies visibles sans lag : la diminution d'humidité se cale plus directement sur la montée de l'élévation, ce qui réduit l’asymétrie matin/soir sans inverser le sens de la relation. + +#### Élévation solaire → Luminance (lag +10 min) + +![](figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation.png) + +Luminance et élévation solaire sont presque alignées (r ~ 0,76) : plus le soleil est haut, plus la luminance est forte, avec peu de dispersion hors des périodes nocturnes. + +![](figures/pairwise_scatter/scatter_illuminance_vs_sun_elevation_lagged.png) + +Le décalage de +10 min ne change quasiment rien (r stable), la synchronisation initiale étant déjà suffisante. + +La comparaison de ces graphiques met en évidence l'intérêt de prendre en compte le décalage temporel, au moins dans certains cas. +En réalignant temporellement les points de mesure, on renforce les corrélations précédemment calculées (les nuages de points se resserrent). + +#### Autres relations + +![](figures/pairwise_scatter/scatter_temperature_vs_humidity.png) + +Relation inverse marquée (r ~ -0,60) : le nuage suit presque une diagonale descendante, avec peu de points s’écartant fortement, ce qui suggère une structure quasi linéaire malgré le bruit résiduel. + +![](figures/pairwise_scatter/scatter_temperature_vs_pressure.png) + +Léger biais positif (r ~ 0,16) : la pression reste cantonnée entre 1005 et 1025 hPa tandis que la température oscille largement autour, formant des bandes verticales qui s’élargissent dans le temps (couleurs plus récentes), signe que la montée saisonnière des températures se superpose à une pression quasi stable. + +![](figures/pairwise_scatter/scatter_temperature_vs_rain_rate.png) + +96 % des mesures sont sans pluie ; les 1242 averses recensées se situent entre 0,7 °C et 24,3 °C, aucune au-delà de 25 °C ni sous 0 °C. Les données couvrant mars→novembre, il manque encore un hiver complet pour conclure sur les très basses températures. + +![](figures/pairwise_scatter/scatter_temperature_vs_wind_speed.png) + +Pas de tendance discernable entre température et vitesse du vent ; la plupart des vitesses restent faibles (médiane ~2,4 km/h) quel que soit le niveau thermique. + +![](figures/pairwise_scatter/scatter_temperature_vs_wind_direction.png) + +Les températures les plus hautes apparaissent surtout avec des vents de Nord à Ouest, tandis que les flux Sud/Est s'accompagnent de valeurs plus fraîches ; le motif reste toutefois très dispersé. + +![](figures/pairwise_scatter/scatter_humidity_vs_pressure.png) + +Humidité légèrement plus élevée quand la pression est basse (r ~ -0,13), mais la dispersion domine : on observe aussi des humidités fortes au-dessus de 1020 hPa (médiane ~83 % entre 1020–1030 hPa), montrant qu’une haute pression n’implique pas forcément un air sec. + +![](figures/pairwise_scatter/scatter_humidity_vs_rain_rate.png) + +Nuage très asymétrique : la plupart des observations sans pluie, et les averses (rares) surviennent quand l'humidité est déjà élevée, d'où une faible corrélation positive (r ~ 0,15). + +![](figures/pairwise_scatter/scatter_humidity_vs_wind_speed.png) + +Pas de relation lisible entre humidité et vitesse du vent ; les points restent éparpillés sur toute la gamme. + +![](figures/pairwise_scatter/scatter_humidity_vs_wind_direction.png) + +Air plus humide sous vents de Sud et Sud-Ouest (moyenne ~79–81 %), plus sec sous flux de Nord-Est à Est (~68–70 %), même si chaque secteur reste très dispersé. + +![](figures/pairwise_scatter/scatter_pressure_vs_rain_rate.png) + +Pression légèrement plus basse lors des épisodes pluvieux (r ~ -0,09), mais les 1242 occurrences de pluie s’étendent de 977 à 1027 hPa : la plupart entre 990 et 1020 hPa, quelques cas rares au-dessus de 1020 hPa, et très peu sous 980 hPa, ce qui limite l’interprétation. + +![](figures/pairwise_scatter/scatter_pressure_vs_illuminance.png) + +Faible tendance (r ~ 0,14) à associer les hautes pressions aux périodes lumineuses ; la variance reste importante, y compris de nuit. Seul un point atteint ~40 k lux sous ~981 hPa, isolé et insuffisant pour inférer un motif. + +![](figures/pairwise_scatter/scatter_pressure_vs_wind_speed.png) + +Vents plus rapides quand la pression baisse (r ~ -0,23), avec des vitesses élevées surtout sous 1010 hPa. Les calmes (0 km/h) apparaissent néanmoins à tous les niveaux de pression et même plus souvent au-delà de 1020 hPa, signe qu’une basse pression ne s’accompagne pas systématiquement de vent. + +![](figures/pairwise_scatter/scatter_pressure_vs_wind_direction.png) + +Pression plus élevée sous vents d'Est/NE (médiane ~1012–1014 hPa) et plus basse quand le flux vient du Sud-Ouest (médiane ~1009 hPa). La densité de points sous SO reflète surtout un effectif plus grand, pas une pression plus haute. + +![](figures/pairwise_scatter/scatter_pressure_vs_sun_elevation.png) + +Cycle quotidien faible (r ~ 0,10) : la pression monte légèrement quand le soleil est haut mais reste globalement stable. Sur la période mars→novembre, les médianes mensuelles montrent des pressions plus élevées en septembre (~1018 hPa) qu’en juillet (~1006 hPa), ce que suggère aussi le gradient temporel de la figure. + +![](figures/pairwise_scatter/scatter_rain_rate_vs_illuminance.png) + +Comme 96 % des valeurs sont nulles, aucune tendance nette ; les rares précipitations surviennent surtout lorsque la luminance est faible. + +![](figures/pairwise_scatter/scatter_rain_rate_vs_wind_speed.png) + +Les averses (rares) coïncident avec des vents un peu plus rapides (médiane ~3,2 km/h sous pluie contre ~2,4 km/h), mais la majorité des vitesses reste faible et sans pluie. + +![](figures/pairwise_scatter/scatter_rain_rate_vs_wind_direction.png) + +Précipitations plus présentes avec des vents d'Ouest à Nord-Ouest (~0,2 mm/h en moyenne sur ces secteurs) que sous flux d'Est/NE, mais le signal reste faible car la plupart des pas de temps sont secs. + +![](figures/pairwise_scatter/scatter_rain_rate_vs_sun_elevation.png) + +Pas de corrélation avec l'élévation solaire (r ~ 0) : les épisodes pluvieux, rares, sont répartis sur le jour et la nuit. Les fréquences de pluie varient peu selon l’élévation (≈3–4,5 % des points), avec un léger surplus aux basses élévations mais sans tendance nette matin/après-midi. + +![](figures/pairwise_scatter/scatter_illuminance_vs_wind_speed.png) + +Luminance élevée coïncide légèrement avec des vents un peu plus rapides (r ~ 0,13), mais la plupart des observations restent proches du calme quelle que soit la lumière. + +![](figures/pairwise_scatter/scatter_illuminance_vs_wind_direction.png) + +Luminance plus forte lorsque le vent vient du Nord/Nord-Ouest (~28–29 klx en moyenne), nettement plus faible sous vents de Sud (~5 klx), malgré une dispersion importante. + +![](figures/pairwise_scatter/scatter_wind_speed_vs_wind_direction.png) + +Vitesse du vent très dépendante du secteur : vents d'Ouest et Sud-Ouest nettement plus rapides (~4,7 km/h en moyenne) alors que les autres directions tournent autour de 1–2 km/h. + +![](figures/pairwise_scatter/scatter_wind_speed_vs_sun_elevation.png) + +Légère hausse des vitesses quand le soleil est plus haut (r ~ 0,12), mais une proportion importante de calmes persiste à toutes les élévations. + +![](figures/pairwise_scatter/scatter_wind_direction_vs_sun_elevation.png) + +Élévation solaire maximale observée surtout avec des vents de Nord/Nord-Ouest, tandis que les flux de Sud coïncident fréquemment avec des élévations négatives (nuit), signe d'une dépendance au cycle journalier plus qu'au secteur lui-même. diff --git a/docs/05 - Corrélations binaires avancées/scripts/plot_all_pairwise_scatter.py b/docs/05 - Corrélations binaires avancées/scripts/plot_all_pairwise_scatter.py new file mode 100644 index 0000000..7527d45 --- /dev/null +++ b/docs/05 - Corrélations binaires avancées/scripts/plot_all_pairwise_scatter.py @@ -0,0 +1,177 @@ +# scripts/plot_all_pairwise_scatter.py +from __future__ import annotations + +from pathlib import Path +import sys + +import pandas as pd + + +PROJECT_ROOT = Path(__file__).resolve().parents[3] +if str(PROJECT_ROOT) not in sys.path: + sys.path.insert(0, str(PROJECT_ROOT)) + +from meteo.dataset import load_raw_csv +from meteo.variables import iter_variable_pairs +from meteo.plots import plot_scatter_pair + + +CSV_PATH = Path("data/weather_minutely.csv") +DOC_DIR = Path(__file__).resolve().parent.parent +OUTPUT_DIR = DOC_DIR / "figures" / "pairwise_scatter" +LAG_MATRIX_PATH = DOC_DIR / "data" / "lag_matrix_minutes.csv" +CORR_MATRIX_PATH = DOC_DIR / "data" / "correlation_matrix_lagged.csv" +MIN_ABS_CORR_FOR_LAGGED = 0.3 + + +def _load_lag_matrix(path: Path) -> pd.DataFrame | None: + if not path.exists(): + print(f"⚠ Aucun lag appliqué : fichier absent ({path}).") + return None + + lag_df = pd.read_csv(path, index_col=0) + if lag_df.empty: + print(f"⚠ Matrice de lags vide : {path}") + return None + return lag_df + + +def _load_corr_matrix(path: Path) -> pd.DataFrame | None: + if not path.exists(): + print(f"⚠ Matrice de corrélation laggée absente ({path}) : les versions décalées seront ignorées.") + return None + + corr_df = pd.read_csv(path, index_col=0) + if corr_df.empty: + print(f"⚠ Matrice de corrélation laggée vide : {path}") + return None + return corr_df + + +def _get_optimal_lag(lag_df: pd.DataFrame, var_x, var_y) -> int | None: + try: + value = lag_df.loc[var_x.column, var_y.column] + except KeyError: + return None + + if pd.isna(value): + return None + + return int(round(float(value))) + + +def _should_generate_lagged( + lag_df: pd.DataFrame | None, + corr_df: pd.DataFrame | None, + var_x, + var_y, +) -> tuple[bool, int | None, float | None, str | None]: + """ + Retourne (do_generate, applied_lag_minutes, corr_value, source) où : + - applied_lag_minutes s'applique au couple (var_x, var_y) dans cet ordre + (lag > 0 : var_x précède var_y ; lag < 0 : var_y précède var_x). + - source précise l'orientation retenue dans les matrices (ex: "x->y" ou "y->x"). + Règles : + - lag strictement positif + - |corr| >= MIN_ABS_CORR_FOR_LAGGED + On teste les deux orientations (x->y et y->x) pour détecter le cas où le + lag positif n'est disponible que dans l'ordre inverse ; on rétablit ensuite + l'ordre original (var_x, var_y) pour la génération du scatter. + """ + if lag_df is None or corr_df is None: + return False, None, None, None + + candidates: list[tuple[float, int, float, str]] = [] + for lead, follow in ((var_x, var_y), (var_y, var_x)): + try: + lag_value = lag_df.loc[lead.column, follow.column] + corr_value = corr_df.loc[lead.column, follow.column] + except KeyError: + continue + + if pd.isna(lag_value) or pd.isna(corr_value): + continue + + lag_minutes = int(round(float(lag_value))) + corr_float = float(corr_value) + if lag_minutes <= 0: + continue + if abs(corr_float) < MIN_ABS_CORR_FOR_LAGGED: + continue + + orientation = "x->y" if lead is var_x and follow is var_y else "y->x" + candidates.append((abs(corr_float), lag_minutes, corr_float, orientation)) + + if not candidates: + return False, None, None, None + + # Priorise la plus forte corrélation absolue ; à défaut, la première trouvée + candidates.sort(key=lambda tup: tup[0], reverse=True) + _, lag_minutes, corr_float, orientation = candidates[0] + + if orientation == "x->y": + applied_lag = lag_minutes # var_x précède var_y + else: + applied_lag = -lag_minutes # var_y précède var_x, on conserve l'ordre (x, y) + + return True, applied_lag, corr_float, orientation + + +def main() -> None: + if not CSV_PATH.exists(): + print(f"⚠ Fichier introuvable : {CSV_PATH}") + return + + df = load_raw_csv(CSV_PATH) + print(f"Dataset minuté chargé : {CSV_PATH}") + print(f" Lignes : {len(df)}") + print(f" Colonnes : {list(df.columns)}") + + lag_matrix = _load_lag_matrix(LAG_MATRIX_PATH) + if lag_matrix is not None: + print(f"Matrice de lags optimale chargée depuis : {LAG_MATRIX_PATH}") + corr_matrix = _load_corr_matrix(CORR_MATRIX_PATH) + if corr_matrix is not None: + print(f"Matrice de corrélations (lag optimal) chargée depuis : {CORR_MATRIX_PATH}") + + pairs = iter_variable_pairs() + print(f"Nombre de paires de variables : {len(pairs)}") + + for var_x, var_y in pairs: + filename = f"scatter_{var_x.key}_vs_{var_y.key}.png" + output_path = OUTPUT_DIR / filename + + print(f"→ Trace {var_y.key} en fonction de {var_x.key} → {output_path}") + plot_scatter_pair( + df=df, + var_x=var_x, + var_y=var_y, + output_path=output_path, + sample_step=10, # un point sur 10 : ≈ 32k points au lieu de 320k + ) + + do_lagged, lag_minutes, corr_value, orientation = _should_generate_lagged(lag_matrix, corr_matrix, var_x, var_y) + if not do_lagged or lag_minutes is None or orientation is None: + print(" (pas de version décalée : lag <= 0 ou |r| insuffisant)") + continue + + lagged_filename = f"scatter_{var_x.key}_vs_{var_y.key}_lagged.png" + lagged_output = OUTPUT_DIR / lagged_filename + print( + f" + Version décalée ({lag_minutes:+d} min appliqué sur {var_x.key} vs {var_y.key}, " + f"|r|={abs(corr_value):.3f}, source {orientation}) → {lagged_output}" + ) + plot_scatter_pair( + df=df, + var_x=var_x, + var_y=var_y, + output_path=lagged_output, + sample_step=10, + lag_minutes=lag_minutes, + ) + + print("✔ Tous les graphiques de nuages de points ont été générés.") + + +if __name__ == "__main__": + main() diff --git a/docs/06 - Corrélations multiples/figures/hexbin_explorations/hexbin_lux_humidity_color_temp.png b/docs/06 - Corrélations multiples/figures/hexbin_explorations/hexbin_lux_humidity_color_temp.png deleted file mode 100644 index 4b5559c..0000000 Binary files a/docs/06 - Corrélations multiples/figures/hexbin_explorations/hexbin_lux_humidity_color_temp.png and /dev/null differ diff --git a/docs/06 - Corrélations multiples/figures/hexbin_explorations/hexbin_pressure_rain_color_wind.png b/docs/06 - Corrélations multiples/figures/hexbin_explorations/hexbin_pressure_rain_color_wind.png deleted file mode 100644 index 3573c77..0000000 Binary files a/docs/06 - Corrélations multiples/figures/hexbin_explorations/hexbin_pressure_rain_color_wind.png and /dev/null differ diff --git a/docs/06 - Corrélations multiples/figures/hexbin_explorations/hexbin_temp_humidity_color_rain.png b/docs/06 - Corrélations multiples/figures/hexbin_explorations/hexbin_temp_humidity_color_rain.png deleted file mode 100644 index b42a28c..0000000 Binary files a/docs/06 - Corrélations multiples/figures/hexbin_explorations/hexbin_temp_humidity_color_rain.png and /dev/null differ diff --git a/docs/06 - Premier recadrage scientifique/index.md b/docs/06 - Premier recadrage scientifique/index.md new file mode 100644 index 0000000..b7abd0b --- /dev/null +++ b/docs/06 - Premier recadrage scientifique/index.md @@ -0,0 +1,414 @@ +# Premier recadrage scientifique + +À ce stade de l'étude : + +- on a présenté [les données brutes](../03%20-%20Premiers%20graphiques/) +- on a établi les premières [corrélations binaires](../04%20-%20Corrélations%20binaires/) +- on a cherché un [lien plus poussé](../05%20-%20Corrélations%20binaires%20avancées/) entre les différentes variables + +Il est temps, désormais, de rapprocher nos observations avec les faits scientifiques. +Pour chaque corrélation que l'on a identifié auparavant, nous allons expliquer en quoi elle cadre — ou pas — avec la physique et la météorologie. +Nous allons voir qu'il nous manque des informations importantes, et pourtant hors de portée, mais que ce n'est pas pour autant qu'avoir une station météo est complètement inutile... + +Commençons par rappeler que notre jeu de donnée couvre une période restreinte, s'étalant de mars à novembre, et que par conséquent, il nous manque des données hivernales. + +Gardons un ton de guide : ce qu’on voit concrètement dans les courbes, ce que la science en dit, et comment le lag raconte l’inertie des phénomènes. L’idée est de profiter du « plaisir de l’analyse » comme d’une enquête météo, pas juste d’aligner des coefficients. + +## Température + +Un fil conducteur simple : quand la température change, elle entraîne ou suit d’autres variables avec plus ou moins d’inertie. On lit ci-dessous le « film » de la journée en reliant chaque paire. + +### Humidité relative + +Anti-corrélation nette et immédiate : les superpositions montrent que l’humidité chute quand la température monte, avec un r ≈ -0,60 et pas de lag notable ; le nuage de points forme presque une diagonale descendante. +La physique attend exactement cela : la pression de vapeur saturante augmente avec la température (relation de [Clausius-Clapeyron](https://en.wikipedia.org/wiki/Clausius%E2%80%93Clapeyron_relation)), donc, à teneur en vapeur quasi constante, l’humidité relative baisse quand l’air se réchauffe. +Pas besoin d’autres variables que celles déjà mesurées pour expliquer le signe ; les écarts tiennent surtout au bruit instrumental et aux micro-variations d’eau précipitable non mesurée (ce n’est pas équivalent à nos précipitations mesurées : nous avons le flux de pluie dans les données, mais nous ne l’avons pas encore croisé ici, car nous restons sur une analyse binaire par paire). + +| Variable manquante | Pourquoi essentielle | +| ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Eau précipitable intégrée (colonne d’eau vapeur) | Fixe le contenu total en vapeur disponible ; aide à distinguer un air réellement sec d’un air temporairement « asséché » par réchauffement sans apport/évacuation de vapeur. | + +Conclusion : notre signal colle bien au modèle théorique, sans inertie mesurable à ce pas de 10 minutes. + +### Pression atmosphérique + +Corrélation faible et positive (r ≈ 0,16) : la pression reste cantonnée entre ~1005 et 1025 hPa alors que la température varie largement, d’où des bandes verticales sans structure forte dans le temps. +La science n’attend pas de lien direct local entre température de surface et pression : les variations de pression dépendent des structures synoptiques et de l’épaisseur de la colonne d’air (https://en.wikipedia.org/wiki/Atmospheric_pressure#Weather_and_climate). + +| Variable manquante | Pourquoi essentielle | +| ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | +| Champ de pression régional / gradients horizontaux | Permet d’évaluer la dynamique synoptique qui domine la pression locale et explique l’absence de lien direct avec la température de surface. | +| Altitude géopotentielle (épaisseur de la colonne d’air) | Indique la masse d’air et la structure verticale qui conditionnent la pression au sol. | + +Conclusion : l’absence de corrélation forte est conforme au modèle ; notre léger biais reflète surtout la saison chaude plus longue dans la période couverte. + +### Pluviométrie + +La pluie est rare (≈4 % des pas de temps) et survient entre 0,7 °C et 24,3 °C ; aucune averse au-delà de 25 °C ni sous 0 °C sur la période étudiée, donc pas de relation claire avec la température. +[Scientifiquement](), la pluie se produit dès que l’air atteint la saturation et que la condensation dépasse l’évaporation, possible sur une large plage de températures. + +| Variable manquante | Pourquoi essentielle | +| --------------------------------------- | ---------------------------------------------------------------------------------------- | +| Données hivernales complètes | Captent les épisodes froids (neige, pluies froides) absents de la série mars→novembre. | +| Profil vertical (température, humidité) | Conditionne la saturation et la phase des précipitations. | +| Indices de stabilité (CAPE/CIN) | Discriminent convection vs pluie stratiforme et donc la plage de températures associées. | +| Couverture/épaisseur nuageuse | Relie directement le rayonnement, la condensation et la formation de pluie. | + +Conclusion : notre échantillon incomplet (mars→novembre) ne permet pas de valider ou d’infirmer le modèle ; la neutralité observée est attendue sans la saison froide. + +### Luminance + +Lien fort et décalé : la luminance précède la température d’environ +130 min (r passe de ~0,51 à ~0,59 après réalignement). Sans lag, le nuage est étalé par la nuit ; avec lag, il se resserre et la pente croissante devient plus homogène. +La hausse d’irradiance [chauffe](https://en.wikipedia.org/wiki/Solar_irradiance) le sol et l’air ; le lag de ~2 h traduit l’[inertie thermique du sol](https://en.wikipedia.org/wiki/Thermal_inertia) et du volume d’air. + +| Variable manquante | Pourquoi essentielle | +| --------------------------------------- | --------------------------------------------------------------------------------- | +| Couverture nuageuse / épaisseur optique | Module directement l’irradiance reçue et donc le chauffage qui crée le lag. | +| Albédo du sol | Fixe la part d’énergie absorbée vs réfléchie, donc l’inertie thermique effective. | +| Humidité du sol | Contrôle le partage chaleur sensible/latente et l’amortissement du pic thermique. | + +Conclusion : la corrélation et son décalage collent bien au modèle de chauffage diurne amorti par l’inertie. + +### Vitesse du vent + +Pas de corrélation lisible : les vitesses restent basses (médiane ~2,4 km/h) quelle que soit la température. +La science n’impose pas de lien simple : le vent dépend du [gradient de pression](https://en.wikipedia.org/wiki/Wind#Pressure_gradient) et de la dynamique synoptique plus que de la température locale, sauf brises thermiques absentes ici. + +| Variable manquante | Pourquoi essentielle | +| ----------------------------------- | ------------------------------------------------------------------------------ | +| Champ de pression à grande échelle | Donne le gradient qui génère le vent au-delà de l’effet thermique local. | +| Rugosité locale (occupation du sol) | Contrôle le frottement et la dissipation qui plafonnent les vitesses mesurées. | + +Conclusion : l’absence de structure est conforme ; notre jeu ne permet pas d’identifier de brise diurne marquée. + +### Direction du vent + +Les températures les plus élevées s’observent surtout avec des vents de Nord à Ouest ; les flux Sud/Est accompagnent plutôt des valeurs plus fraîches, mais la dispersion reste importante. +Scientifiquement, la direction signe l’[advection](https://en.wikipedia.org/wiki/Advection) de masses d’air chaudes ou froides, ce qui peut créer des contrastes thermiques. + +| Variable manquante | Pourquoi essentielle | +| -------------------------------------------------------- | --------------------------------------------------------------------------------- | +| Température potentielle équivalente des masses advectées | Qualifie directement la chaleur et l’humidité apportées par la direction du vent. | +| Position des fronts / structure synoptique | Explique les basculements de direction associés à des sauts de température. | + +Conclusion : signal cohérent avec l’advection, mais faible car nos données locales ne séparent pas clairement les régimes. + +### Élévation solaire + +Corrélation positive et décalée : r ≈ 0,47 sans lag, ~0,56 avec +150 min. Le nuage décrit un « 8 » matin/soir ; le décalage resserre la relation tout en conservant cette double branche. +La [variation diurne de température](https://en.wikipedia.org/wiki/Diurnal_temperature_variation) suit l’angle solaire avec retard dû à l’inertie thermique et au bilan radiatif sol-atmosphère. + +| Variable manquante | Pourquoi essentielle | +| ------------------------------------- | ------------------------------------------------------------------------------------------------ | +| Couverture nuageuse / flux infrarouge | Module le bilan radiatif net et donc l’ampleur du lag thermique. | +| Humidité du sol | Conditionne la part de chaleur latente vs sensible, qui décale ou amortit le pic de température. | + +Conclusion : la forme en « 8 » et le lag sont conformes au cycle jour/nuit amorti ; les écarts résident dans la nébulosité non mesurée. + +## Humidité relative + +On suit ici le comportement de l’air humide qui se tasse ou se recharge selon les régimes météo et le rythme diurne. + +### Pression atmosphérique + +Relation faible (r ≈ -0,13) : l’air est légèrement plus humide quand la pression est basse, mais la dispersion domine, y compris au-dessus de 1020 hPa. +Les [basses pressions](https://en.wikipedia.org/wiki/Atmospheric_pressure#Weather_and_climate) favorisent l’ascendance et la saturation, mais le lien local est souvent faible. + +| Variable manquante | Pourquoi essentielle | +| ---------------------------------------- | ---------------------------------------------------------------------------------------------- | +| Profils verticaux (température/humidité) | Décrivent l’ascendance et la saturation en altitude, qui relient pression basse et air humide. | +| Indices d’instabilité (CAPE/CIN) | Indiquent le potentiel de condensation ou de convection qui augmente l’humidité relative. | + +Conclusion : signal faible conforme ; dispersion expliquée par l’absence d’information verticale. + +### Pluviométrie + +Léger signal (r ≈ 0,15) : les rares averses apparaissent surtout quand l’humidité est déjà élevée, mais la majorité des points restent secs. +La science attend une humidité élevée avant précipitation, proche du [point de rosée](https://en.wikipedia.org/wiki/Dew_point). + +| Variable manquante | Pourquoi essentielle | +| --------------------------------------------------- | ----------------------------------------------------------------------------- | +| Mesure de saturation locale (T, Td) et condensation | Confirme le passage au point de rosée et la présence effective de nuages. | +| Forçage dynamique (ascendance) | Explique l’initiation des précipitations au-delà de la seule humidité élevée. | + +Conclusion : cohérent mais atténué par la rareté des épisodes et l’absence de données nuageuses. + +### Luminance + +Anti-corrélation marquée et décalée : r ≈ -0,52 sans lag, ~-0,63 avec +140 min. Deux régimes ressortent après décalage : luminance < 40 klx associée à une humidité élevée (~82 % médiane) et 60–100 klx avec humidité plus basse (~46 % médiane). +Le réchauffement diurne augmente la capacité de l’air en vapeur d’eau, faisant baisser l’humidité relative (Clausius-Clapeyron) ; la baisse suit l’augmentation de [rayonnement](https://en.wikipedia.org/wiki/Evaporation) avec inertie. + +| Variable manquante | Pourquoi essentielle | +| -------------------------------- | --------------------------------------------------------------------- | +| Vitesse d’évaporation de surface | Relie le rayonnement au dessèchement effectif de l’air. | +| Humidité du sol | Conditionne l’évaporation disponible et l’humidité restituée à l’air. | +| Couverture nuageuse | Pilote l’irradiance et donc le rythme du séchage diurne. | + +Conclusion : l’anti-corrélation décalée correspond bien au séchage diurne ; la dispersion vient du voile nuageux non mesuré. + +### Vitesse du vent + +Pas de tendance discernable : le nuage reste éparpillé sur toute la gamme d’humidité. +La ventilation peut assécher ou humidifier selon la masse d’air advectée, mais sans information sur l’origine et la teneur en vapeur, aucune loi simple n’est attendue. + +| Variable manquante | Pourquoi essentielle | +| ------------------------------------- | --------------------------------------------------------------- | +| Humidité spécifique des flux entrants | Détermine si le vent apporte de l’air plus sec ou plus humide. | +| Rugosité / turbulence mesurée | Indique la capacité du vent à mélanger ou disperser l’humidité. | + +Conclusion : absence de corrélation attendue avec nos seules données locales. + +### Direction du vent + +Air plus humide sous vents de Sud/Sud-Ouest (~79–81 % en moyenne), plus sec sous flux de Nord-Est à Est (~68–70 %), malgré une forte dispersion dans chaque secteur. +L’advection de [masses d’air](https://en.wikipedia.org/wiki/Air_mass) maritimes ou continentales contrôle la teneur en vapeur. + +| Variable manquante | Pourquoi essentielle | +| ----------------------------------------- | ------------------------------------------------------------------------------------ | +| Humidité spécifique des masses advectées | Caractérise la teneur en vapeur réellement importée par chaque secteur de vent. | +| Trajectoires des flux (back-trajectoires) | Relient la direction locale à l’origine géographique et à l’humidification en route. | + +Conclusion : cohérent avec l’advection d’air plus ou moins humide ; dispersion due au mélange de régimes et à l’absence de suivi des trajectoires. + +### Élévation solaire + +Anti-corrélation avec lag : r ≈ -0,37 sans décalage, ~-0,50 avec +170 min. L’humidité diminue en suivant la montée solaire ; le décalage réduit l’asymétrie matin/soir. +Le cycle diurne de température et d’irradiance réduit l’humidité relative après le lever du soleil, avec un retard lié à l’inertie thermique (diurne et évaporation). + +| Variable manquante | Pourquoi essentielle | +| -------------------------------- | ----------------------------------------------------------------------------------------------- | +| Nébulosité / couverture nuageuse | Module l’irradiance reçue et donc la vitesse de baisse de l’humidité relative. | +| Humidité du sol | Fixe la quantité d’eau évaporée qui peut rehausser l’humidité relative malgré le réchauffement. | + +Conclusion : relation et lag conformes ; la dispersion vient surtout des variations de couverture nuageuse non mesurée. + +## Pression atmosphérique + +On lit ici la pression comme un baromètre large : elle réagit aux systèmes météo plus qu’aux micro-variations locales. + +### Pluviométrie + +Faible relation négative (r ≈ -0,09) : la pression est légèrement plus basse pendant les épisodes pluvieux, mais les averses couvrent 977–1027 hPa avec la majorité entre 990 et 1020 hPa. +C’est attendu : [les systèmes dépressionnaires](https://en.wikipedia.org/wiki/Low-pressure_area) favorisent les pluies. + +| Variable manquante | Pourquoi essentielle | +| ----------------------------- | -------------------------------------------------------------------------------- | +| Gradient de pression régional | Explique la dynamique dépressionnaire qui déclenche pluie et baisse de pression. | +| Trajectoires des dépressions | Relient la chronologie pluie/pression à l’évolution synoptique. | + +Conclusion : signal faible mais cohérent, limité par la rareté des pluies et l’absence de contexte synoptique. + +### Luminance + +Tendance légère (r ≈ 0,14) à associer fortes pressions et périodes lumineuses, avec une variance élevée et beaucoup de points nocturnes. +Les [hautes pressions](https://en.wikipedia.org/wiki/High-pressure_area) sont souvent anticycloniques, associées à un ciel plus clair. + +| Variable manquante | Pourquoi essentielle | +| ------------------------------------------------- | ------------------------------------------------------------------------------------ | +| Nébulosité / couverture nuageuse | Conditionne la transparence et la luminance sous haute pression. | +| Aérosols | Modifient la diffusion de la lumière même sous ciel clair, impactant la luminance. | +| Angle solaire direct (irradiance directe/diffuse) | Permet de séparer l’effet géométrique de l’effet atmosphérique sur la lumière reçue. | + +Conclusion : tendance conforme, affaiblie par l’absence de mesure de couverture nuageuse. + +### Vitesse du vent + +Les vents accélèrent quand la pression baisse (r ≈ -0,23) ; les vitesses élevées se concentrent sous ~1010 hPa, tandis que les calmes existent à tous les niveaux. +Le [vent](https://en.wikipedia.org/wiki/Geostrophic_wind) naît du gradient de pression : une pression plus basse locale traduit souvent un gradient plus fort et donc plus de vent. + +| Variable manquante | Pourquoi essentielle | +| ----------------------------------------------- | -------------------------------------------------------------------------------------- | +| Champ de pression spatial (analyser synoptique) | Donne le gradient réel qui génère le vent mesuré. | +| Rugosité locale | Contrôle la dissipation du vent et explique les calmes malgré des gradients possibles. | + +Conclusion : cohérent avec la dynamique de gradient ; la dispersion est logique sans champ spatial. + +### Direction du vent + +Pression plus élevée sous vents d’Est/Nord-Est (~1012–1014 hPa) et plus basse sous flux de Sud-Ouest (~1009 hPa), effet en partie dû à une fréquence plus forte des vents de SO. +Les régimes de [circulation](https://en.wikipedia.org/wiki/Atmospheric_circulation) imposent des couples direction/pression, sans relation causale directe locale. + +| Variable manquante | Pourquoi essentielle | +| ----------------------------------- | -------------------------------------------------------------------------------- | +| Carte synoptique / centres d’action | Identifie les régimes (anticyclone, dépression) qui lient direction et pression. | + +Conclusion : cohérent avec des régimes de circulation distincts ; la mesure locale ne permet pas de séparer clairement chaque régime. + +### Élévation solaire + +Cycle quotidien faible (r ≈ 0,10) : légère hausse de pression quand le soleil est haut, mais la série reste quasi stable ; sur mars→novembre, la pression médiane est plus haute en septembre qu’en juillet. +La [marée atmosphérique](https://en.wikipedia.org/wiki/Atmospheric_tide) diurne induit une oscillation faible, compatible avec ce signal. + +| Variable manquante | Pourquoi essentielle | +| ----------------------- | ------------------------------------------------------------------------------- | +| Série annuelle complète | Vérifie la marée atmosphérique sur tous les mois et ses double-max journaliers. | + +Conclusion : cohérent avec un faible forçage diurne ; amplitude atténuée par le bruit météo. + +## Pluviométrie + +Lecture « terrain » : on confronte ici le pluviomètre à la lumière, au vent et au moment de la journée. + +### Luminance + +Pas de tendance nette : 96 % des valeurs sont nulles ; les rares précipitations surviennent surtout quand la luminance est faible. +Physiquement, les [nuages](https://en.wikipedia.org/wiki/Cloud) bloquent la lumière, donc une luminance faible est attendue sous pluie. + +| Variable manquante | Pourquoi essentielle | +| ------------------------------ | ------------------------------------------------------------------------------- | +| Nébulosité / épaisseur optique | Mesure directe du voile nuageux qui réduit la luminance et accompagne la pluie. | + +Conclusion : cohérent malgré le faible effectif, limité par l’échantillon réduit de pluie. + +### Vitesse du vent + +Averses associées à des vents un peu plus rapides (médiane ~3,2 km/h sous pluie vs ~2,4 km/h sinon), mais la plupart des vitesses restent faibles. +Les [précipitations]() s’accompagnent souvent de gradients de pression plus forts et de turbulence, d’où des vents plus vifs. + +| Variable manquante | Pourquoi essentielle | +| ------------------------------- | ------------------------------------------------------------------------ | +| Gradient de pression horizontal | Relie la pluie au forçage dynamique qui accélère le vent. | +| Profil vertical du vent | Indique le cisaillement et la turbulence associés aux systèmes pluvieux. | + +Conclusion : léger signal conforme, noyé par la rareté des épisodes et des vitesses faibles générales. + +### Direction du vent + +Pluie légèrement plus fréquente avec des vents d’Ouest à Nord-Ouest (~0,2 mm/h en moyenne sur ces secteurs) qu’avec des flux d’Est/NE, signal limité par la rareté des événements pluvieux. +Certaines directions [transportent](https://en.wikipedia.org/wiki/Air_mass) plus d’humidité et favorisent la pluie. + +| Variable manquante | Pourquoi essentielle | +| ---------------------------------------- | -------------------------------------------------------------------- | +| Trajectoires des masses d’air | Relient chaque secteur de vent à son origine humide ou sèche réelle. | +| Humidité spécifique des masses advectées | Quantifie l’apport d’eau disponible pour la précipitation. | + +Conclusion : cohérent mais faible, car notre série contient peu d’épisodes et pas d’information sur les trajectoires. + +### Élévation solaire + +Pas de corrélation (r ~ 0) : les épisodes pluvieux, rares, sont répartis jour et nuit, avec seulement un léger excès aux basses élévations. +Les précipitations peuvent survenir à toute heure selon le type de système (front, convection nocturne ou diurne). + +| Variable manquante | Pourquoi essentielle | +| ------------------------------------------------ | ---------------------------------------------------------------------------------- | +| Type de système (front, convection, stratiforme) | Explique la répartition horaire et l’absence de relation avec l’élévation solaire. | +| Indices de stabilité | Discriminent convection diurne/nocturne et pluie frontale. | +| Couverture nuageuse | Lie directement l’élévation solaire apparente aux conditions pluvieuses. | + +Conclusion : absence de relation marquée conforme aux processus variés de pluie. + +## Luminance + +Ici, on lit la lumière comme proxy de l’irradiance et des nuages : un fil conducteur pour comprendre le reste. + +### Vitesse du vent + +Corrélation très faible (r ≈ 0,13) : la luminance élevée coïncide parfois avec des vents un peu plus rapides, mais la plupart des observations restent proches du calme. +En [convection](https://en.wikipedia.org/wiki/Convective_boundary_layer) diurne, le réchauffement de surface renforce la turbulence et peut accroître un peu le vent, d’où ce signal modeste. + +| Variable manquante | Pourquoi essentielle | +| --------------------------------- | ------------------------------------------------------------------------------------------------ | +| Flux radiatif net (bilan surface) | Relie directement la luminance au chauffage réel qui peut accélérer le vent. | +| Profil vertical de vent | Montre si des vents plus forts existent en altitude et sont mélangés vers la surface en journée. | + +Conclusion : cohérent mais faible, logique avec des vents globalement bas. + +### Direction du vent + +Luminance plus forte sous vents de Nord/Nord-Ouest (~28–29 klx en moyenne), nettement plus faible sous flux de Sud (~5 klx), malgré une dispersion importante. +Certains [régimes](https://en.wikipedia.org/wiki/Cloud_cover) apportent plus de nébulosité que d’autres, modifiant l’irradiance au sol. + +| Variable manquante | Pourquoi essentielle | +| ------------------------------------- | ------------------------------------------------------------------------------- | +| Mesure directe de couverture nuageuse | Sépare l’effet du régime de vent sur l’irradiance via la nébulosité. | +| Trajectoires des flux | Relie la direction locale à l’origine des masses d’air plus ou moins nuageuses. | + +Conclusion : cohérent avec des régimes nuageux contrastés ; dispersion due à l’absence de mesure nuageuse. + +### Élévation solaire + +Relation quasi linéaire (r ≈ 0,76) et quasi synchrone (lag ~ +10 min sans impact notable) : la luminance suit directement l’[élévation solaire](https://en.wikipedia.org/wiki/Sun_path), hors périodes nocturnes. +La géométrie du soleil fixe l’irradiance extraterrestre, atténuée par l’atmosphère. + +| Variable manquante | Pourquoi essentielle | +| ---------------------------------------------- | ------------------------------------------------------------------------------ | +| Opacité atmosphérique (aérosols, vapeur d’eau) | Ajuste l’atténuation réelle de l’irradiance pour rapprocher théorie et mesure. | +| Couverture nuageuse | Explique les écarts ponctuels à la relation géométrique quasi linéaire. | + +Conclusion : correspond au modèle géométrique, l’écart provenant des nuages non mesurés. + +## Vitesse du vent + +On suit le vent comme vecteur d’advection et de mélange, avec ses variations de secteur et son léger souffle diurne. + +### Direction du vent + +Vitesse très dépendante du secteur : vents d’Ouest et Sud-Ouest nettement plus rapides (~4,7 km/h en moyenne), les autres directions tournant autour de 1–2 km/h. +Les [régimes synoptiques](https://en.wikipedia.org/wiki/Atmospheric_circulation) imposent des directions et des vitesses différentes selon la circulation générale. + +| Variable manquante | Pourquoi essentielle | +| ------------------------------- | ----------------------------------------------------------------------------- | +| Gradient de pression horizontal | Donne le forçage principal qui accélère le vent pour chaque secteur. | +| Traînée de surface / rugosité | Explique la dissipation différentielle selon le paysage autour de la station. | + +Conclusion : cohérent avec des régimes de circulation distincts ; la variabilité interne reste forte. + +### Élévation solaire + +Corrélation faible (r ≈ 0,12) : les vitesses montent légèrement quand le soleil est plus haut, mais des calmes subsistent à toutes les élévations. +Le [chauffage diurne](https://en.wikipedia.org/wiki/Diurnal_temperature_variation) peut renforcer la turbulence et mélanger des vents plus forts vers la surface. + +| Variable manquante | Pourquoi essentielle | +| ----------------------------- | ------------------------------------------------------------------------ | +| Profil vertical de vent | Indique la réserve de vent en altitude pouvant être mélangée en surface. | +| Stabilité de la couche limite | Conditionne l’efficacité du mélange turbulent diurne/nocturne. | + +Conclusion : léger effet diurne conforme ; amplitude limitée par la stabilité souvent élevée et les vitesses faibles. + +## Direction du vent + +On termine avec la direction, bonne sentinelle des régimes météo qui défilent sur la journée. + +### Élévation solaire + +Élévation maximale surtout avec des vents de Nord/Nord-Ouest ; les flux de Sud coïncident fréquemment avec des élévations négatives (nuit), signe d’un motif lié au cycle jour/nuit plus qu’au secteur lui-même. +Les régimes diurnes/nocturnes modulent [la direction](https://en.wikipedia.org/wiki/Land%E2%80%93sea_breeze) via les circulations thermiques locales, ou plus généralement par l’alternance de régimes de pression au cours de la journée. + +| Variable manquante | Pourquoi essentielle | +| -------------------------------------- | ------------------------------------------------------------------ | +| Carte des régimes régionaux | Relie le motif jour/nuit à des schémas de circulation plus larges. | +| Mesure explicite des brises thermiques | Confirme l’origine locale (brise) du cycle directionnel observé. | + +Conclusion : le pattern jour/nuit est plausible ; sans mesure régionale, on ne peut isoler précisément le mécanisme. + +## Données manquantes + +| Relation | Variable | Comment se la procurer | +| -------- | -------- | ---------------------- | +| Température ↔ Humidité relative | Eau précipitable intégrée (PWV) | Reanalyses ERA5/AROME via [API Copernicus CDS](https://cds.climate.copernicus.eu/api-how-to), radiosondages proches, station GNSS locale pour PWV. | +| Température ↔ Luminance / Humidité ↔ Luminance / Élévation solaire ↔ Humidité | Couverture/épaisseur nuageuse | Meteosat via [EUMETSAT Data Store](https://data.eumetsat.int/), METAR/TAF via [NOAA ADDS API](https://aviationweather.gov/data/api/), reanalyses fraction nuageuse via CDS API, caméra ciel locale. | +| Température ↔ Luminance / Élévation solaire ↔ Température | Humidité du sol | Capteur sol, reanalyses ERA5-Land via [CDS](https://cds.climate.copernicus.eu), SAFRAN Météo-France ([données publiques](https://donneespubliques.meteofrance.fr/) ou [data.gouv.fr](https://www.data.gouv.fr/)), API AROME WCS si accessible. | +| Température ↔ Luminance | Albédo du sol | [Corine](https://land.copernicus.eu/pan-european/corine-land-cover) ou [OSM](https://www.openstreetmap.org/) en open data ; NDVI Sentinel/Landsat (ex. [Sentinel Hub](https://www.sentinel-hub.com/)) pour dériver l’albédo. | +| Vent (vitesse/direction) ↔ Température/Pluie | Champ de pression régional / gradient horizontal | ERA5 via CDS, GFS via [NOAA NOMADS](https://nomads.ncep.noaa.gov/), cartes synoptiques publiques, stations baro proches ([data.gouv.fr](https://www.data.gouv.fr/)). | +| Humidité ↔ Pluie / Pluie ↔ Élévation solaire | Profils verticaux (T/HR/vent) | Radiosondages [NOAA IGRA](https://www.ncei.noaa.gov/products/weather-balloon/integrated-global-radiosonde-archive), reanalyses horaires ERA5/AROME via CDS, profils AROME HD (API Météo-France si éligible). | +| Humidité ↔ Pluie / Pluie ↔ Élévation solaire | Indices de stabilité (CAPE/CIN) | Calculés depuis ERA5/AROME via CDS ou sondes ; outils [MetPy](https://unidata.github.io/MetPy/latest/) ou [wgrib2](https://www.cpc.ncep.noaa.gov/products/wesley/wgrib2/). | +| Direction ↔ Humidité / Pluie | Trajectoires des masses d’air (back-trajectoires) | [HYSPLIT NOAA READY](https://www.ready.noaa.gov/HYSPLIT.php), services NOAA en ligne, scripts [PySPLIT](https://pysplit.readthedocs.io/). | +| Luminance ↔ Élévation solaire | Opacité atmosphérique / aérosols | [AERONET API](https://aeronet.gsfc.nasa.gov/new_web/API/index.html), [CAMS](https://ads.atmosphere.copernicus.eu/), PM locaux via [OpenAQ](https://openaq.org/), MODIS AOD via [NASA LAADS](https://ladsweb.modaps.eosdis.nasa.gov/). | +| Luminance ↔ Vent / Température | Flux radiatif net (SW/LW) | Pyranomètre/pyrgéomètre locaux, reanalyses de surface ERA5 via CDS, stations agricoles/météo proches en open data si disponibles. | +| Vent ↔ Température/Pluie | Rugosité / traînée de surface | Corine/OSM, LIDAR [IGN RGE Alti](https://geoservices.ign.fr/rgealti), survey terrain pour estimer z0. | +| Toutes relations | Données hivernales complètes | Continuer la collecte jusqu’à fin d’hiver ; combler avec reanalyses ERA5 via CDS API pour les périodes manquantes. | + +## Conclusion + +Même avec une station complète pour un particulier, on ne mesure qu’une poignée de grandeurs : ce qui est suffisant pour mettre en évidence des relations simples et des lags, mais insuffisant pour reconstituer la dynamique atmosphérique. Dès qu’on veut aller plus loin, il faut des données issues de modèles ou de réseaux lourds. + +Quelques exemples de capteurs hors de portée à la maison : + +- Ceilomètre/mini-lidar nuages (10–30 k€) pour suivre base et épaisseur nuageuse. +- Radiomètre micro-ondes colonne d’eau/vapeur (50–100 k€) pour l’eau précipitable. +- Radar météo local (plusieurs centaines de k€) pour les profils de précipitation. +- Sondes ozone/sondes radios pour profils chimiques/verticaux (opérations et consommables coûteux). + +Ces variables manquantes sont accessibles via des modèles (reanalyses ERA5/AROME, CAMS), des réseaux publics (Meteosat, ADDS, AERONET) ou des capteurs partagés, et c’est indispensable si l’on vise une analyse physique détaillée. + +Pour autant, nos données locales restent utiles : on peut déjà passer aux corrélations multiples et voir comment l’introduction d’une troisième variable déforme ou précise une relation binaire bien établie. Ce sera l’objet du prochain article. diff --git a/docs/06 - Corrélations multiples/index.md b/docs/07 - Corrélations multiples/index.md similarity index 100% rename from docs/06 - Corrélations multiples/index.md rename to docs/07 - Corrélations multiples/index.md diff --git a/docs/06 - Corrélations multiples/scripts/plot_hexbin_explorations.py b/docs/07 - Corrélations multiples/scripts/plot_hexbin_explorations.py similarity index 100% rename from docs/06 - Corrélations multiples/scripts/plot_hexbin_explorations.py rename to docs/07 - Corrélations multiples/scripts/plot_hexbin_explorations.py diff --git a/meteo/plots/relationships.py b/meteo/plots/relationships.py index 278fdda..9843fe9 100644 --- a/meteo/plots/relationships.py +++ b/meteo/plots/relationships.py @@ -23,6 +23,7 @@ def plot_scatter_pair( output_path: str | Path, *, sample_step: int = 10, + lag_minutes: int | None = None, color_by_time: bool = True, cmap: str = "viridis", ) -> Path: @@ -31,6 +32,8 @@ def plot_scatter_pair( - On sous-échantillonne les données avec `sample_step` (par exemple, 1 point sur 10) pour éviter un graphique illisible. + - Si `lag_minutes` est renseigné, on décale Y(t) en Y(t + lag_minutes) + (lag > 0 : X précède Y) avant d'aligner les points. - Si `color_by_time` vaut True et que l'index est temporel, les points sont colorés du plus ancien (sombre) au plus récent (clair). - Lorsque l'axe Y correspond à la direction du vent, on bascule sur @@ -41,7 +44,14 @@ def plot_scatter_pair( output_path.parent.mkdir(parents=True, exist_ok=True) # On ne garde que les colonnes pertinentes et les lignes complètes - df_pair = df[[var_x.column, var_y.column]].dropna() + df_pair = df[[var_x.column, var_y.column]].copy() + + applied_lag = lag_minutes or 0 + if applied_lag != 0: + # Décale Y(t) -> Y(t + lag) : pour lag > 0, X "précède" Y + df_pair[var_y.column] = df_pair[var_y.column].shift(-applied_lag) + + df_pair = df_pair.dropna() if sample_step > 1: df_pair = df_pair.iloc[::sample_step, :] @@ -156,6 +166,10 @@ def plot_scatter_pair( **scatter_kwargs, ) + lag_suffix = "" + if applied_lag != 0: + lag_suffix = f"\nDécalage appliqué : {applied_lag:+d} min (Y décalé)" + if colorbar_meta is not None: cbar = fig.colorbar(scatter, ax=ax) idx = colorbar_meta["index"] @@ -182,11 +196,11 @@ def plot_scatter_pair( if use_polar: assert direction_var is not None and radial_var is not None - ax.set_title(f"{radial_var.label} en fonction de {direction_var.label}") + ax.set_title(f"{radial_var.label} en fonction de {direction_var.label}{lag_suffix}") else: ax.set_xlabel(f"{var_x.label} ({var_x.unit})") ax.set_ylabel(f"{var_y.label} ({var_y.unit})") - ax.set_title(f"{var_y.label} en fonction de {var_x.label}") + ax.set_title(f"{var_y.label} en fonction de {var_x.label}{lag_suffix}") fig.tight_layout() fig.savefig(output_path, dpi=150) plt.close(fig)