Commit 8ed07dbb authored by Le Roux Erwan's avatar Le Roux Erwan
Browse files

[paper 1] fix main plots for the paper - adapt them to the new data

parent 60d5976a
No related merge requests found
Showing with 22 additions and 14 deletions
+22 -14
......@@ -90,7 +90,8 @@ class CrocusDepthVariable(CrocusVariable):
class CrocusDensityVariable(CrocusVariable):
NAME = 'Snow Density'
UNIT = 'kg $m^-3$'
# UNIT = '$\\textnormal{kg m}^{-3}$'
UNIT = 'kg $m^{-3}$'
@classmethod
def keyword(cls):
......
import time
from typing import List
from experiment.meteo_france_data.scm_models_data.crocus.crocus_variables import CrocusDensityVariable
from experiment.meteo_france_data.scm_models_data.visualization.study_visualization.study_visualizer import \
StudyVisualizer
from papers.exceeding_snow_loads.discussion_data_comparison_with_eurocode.crocus_study_comparison_with_eurocode import \
......@@ -25,7 +26,7 @@ from spatio_temporal_dataset.coordinates.transformed_coordinates.transformation.
from root_utils import get_display_name_from_object_type
snow_density_str = '$\\rho_{SNOW}$'
eurocode_snow_density = '{}=150 kg $m^-3$'.format(snow_density_str)
eurocode_snow_density = '{}=150 {}'.format(snow_density_str, CrocusDensityVariable.UNIT)
SLEurocode = 'SL from max HS with ' + eurocode_snow_density
SCM_STUDIES = [SafranSnowfall, CrocusSweTotal, CrocusDepth, CrocusSwe3Days]
......
......@@ -18,14 +18,13 @@ def tuples_for_examples_paper1(examples_for_the_paper=True):
]
else:
marker_altitude_massif_name_for_paper1 = [
('magenta', 600, 'Ubaye'),
('darkmagenta', 600, 'Parpaillon'),
('magenta', 600, 'Parpaillon'),
('darkmagenta', 300, 'Devoluy'),
('mediumpurple', 300, 'Aravis'),
]
return marker_altitude_massif_name_for_paper1
def max_graph_annual_maxima_poster():
"""
We choose these massif because each represents a different eurocode region
......@@ -53,9 +52,10 @@ def max_graph_annual_maxima_poster():
verbose=True,
multiprocessing=True)
snow_abbreviation = SCM_STUDY_CLASS_TO_ABBREVIATION[study_class]
last_plot = massif_name == "Ubaye"
last_plot = color == "magenta"
label = '{} massif at {}m'.format(massif_name, altitude)
tight_pad = {'h_pad': 0.2}
snow_abbreviation = 'max ' + snow_abbreviation
study_visualizer.visualize_max_graphs_poster(massif_name, altitude, snow_abbreviation, color, label,
last_plot, ax, tight_pad=tight_pad,
dpi=dpi_paper1_figure,
......
import matplotlib as mpl
# mpl.rcParams['text.usetex'] = True
# mpl.rcParams['text.latex.preamble'] = [r'\usepackage{amsmath}']
from experiment.meteo_france_data.scm_models_data.crocus.crocus import CrocusDepth
from experiment.meteo_france_data.scm_models_data.crocus.crocus_variables import CrocusDepthVariable
from experiment.meteo_france_data.scm_models_data.visualization.study_visualization.main_study_visualizer import \
......@@ -6,11 +10,11 @@ from experiment.meteo_france_data.scm_models_data.visualization.study_visualizat
StudyVisualizer
import matplotlib.pyplot as plt
from experiment.exceeding_snow_loads.discussion_data_comparison_with_eurocode.crocus_study_comparison_with_eurocode import \
from papers.exceeding_snow_loads.discussion_data_comparison_with_eurocode.crocus_study_comparison_with_eurocode import \
CrocusDifferenceSnowLoad, \
CrocusSnowDensityAtMaxofSwe, CrocusDifferenceSnowLoadRescaledAndEurocodeToSeeSynchronization, \
CrocusSnowDepthAtMaxofSwe, CrocusSnowDepthDifference
from experiment.exceeding_snow_loads.paper_utils import dpi_paper1_figure
from papers.exceeding_snow_loads.paper_utils import dpi_paper1_figure
def max_graph_annual_maxima_comparison():
......@@ -28,7 +32,7 @@ def max_graph_annual_maxima_comparison():
CrocusSnowDepthDifference,
][:]
study_class_to_ylim_and_yticks = {
CrocusSnowDensityAtMaxofSwe: ([100, 500], [50*i for i in range(2, 11)]),
CrocusSnowDensityAtMaxofSwe: ([100, 600], [50*i for i in range(2, 13)]),
CrocusDifferenceSnowLoad: ([0, 12], [2*i for i in range(0, 7)]),
CrocusSnowDepthDifference: ([0, 1], [0.2*i for i in range(0, 6)]),
}
......@@ -59,10 +63,11 @@ def max_graph_annual_maxima_comparison():
ax.legend()
tight_pad = {'h_pad': 0.2}
ax.set_ylim(ylim)
ax.set_xlim([1957, 2018])
ax.set_xlim([1958, 2020])
ax.yaxis.set_ticks(yticks)
study_visualizer.show_or_save_to_file(no_title=True, tight_layout=True,
tight_pad=tight_pad, dpi=dpi_paper1_figure)
tight_pad=tight_pad, dpi=dpi_paper1_figure,
folder_for_variable=False)
ax.clear()
......
......@@ -66,13 +66,14 @@ def intermediate_result(altitudes, massif_names=None,
_ = compute_minimized_aic(visualizer)
# Plots
plot_trend_map(altitude_to_visualizer)
# plot_trend_map(altitude_to_visualizer)
# plot_trend_curves(altitude_to_visualizer={a: v for a, v in altitude_to_visualizer.items() if a >= 900})
# plot_uncertainty_massifs(altitude_to_visualizer)
plot_uncertainty_histogram(altitude_to_visualizer)
# plot_selection_curves(altitude_to_visualizer)
def major_result():
uncertainty_methods = [ConfidenceIntervalMethodFromExtremes.my_bayes,
ConfidenceIntervalMethodFromExtremes.ci_mle][1:]
......
......@@ -17,7 +17,7 @@ def plot_trend_map(altitude_to_visualizer):
for altitude, visualizer in altitude_to_visualizer.items():
if 900 <= altitude <= 4200:
add_color = (visualizer.study.altitude - 1500) % 1200 == 0
add_color = (visualizer.study.altitude - 1800) % 1200 == 0
visualizer.plot_trends(max_abs_tdrl_above_900, add_colorbar=add_color)
# Plot 2700 also with a colorbar
if altitude == 2700:
......
......@@ -63,7 +63,7 @@ def plot_histogram(altitude_to_visualizer, model_subset_for_uncertainty):
ax_twiny.tick_params(labelsize=fontsize_label)
ax_twiny.set_xlim(ax.get_xlim())
ax_twiny.set_xticks(altitudes)
nb_massif_names = [v.study.nb_study_massif_names for v in altitude_to_visualizer.values()]
nb_massif_names = [len(v.massif_names_fitted) for v in altitude_to_visualizer.values()]
print(nb_massif_names)
ax_twiny.set_xticklabels(nb_massif_names)
ax_twiny.set_xlabel('Total number of massifs at each altitude (for the percentage)', fontsize=fontsize_label)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment