diff --git a/projects/altitude_spatial_model/altitudes_fit/two_fold_datasets_generator.py b/projects/altitude_spatial_model/altitudes_fit/two_fold_datasets_generator.py index a931991ea0fae88313639df761df075de9e8d3ca..024adfce88dae39b63478079bda9e05f977cf251 100644 --- a/projects/altitude_spatial_model/altitudes_fit/two_fold_datasets_generator.py +++ b/projects/altitude_spatial_model/altitudes_fit/two_fold_datasets_generator.py @@ -23,7 +23,7 @@ class TwoFoldDatasetsGenerator(object): for massif_name in self.massif_names: l = [] for _ in range(self.nb_samples): - # Append to the list + # Append to the list a new two fold dataset l.append(self.two_fold_datasets(massif_name)) d[massif_name] = l return d diff --git a/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/data.py b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/data.py new file mode 100644 index 0000000000000000000000000000000000000000..af194e84cf7fec16eb42b944d1b70d92f434e478 --- /dev/null +++ b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/data.py @@ -0,0 +1,76 @@ +from collections import OrderedDict + +import matplotlib.pyplot as plt + +from extreme_data.meteo_france_data.scm_models_data.crocus.crocus import CrocusSnowLoadTotal +from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall1Day +from extreme_data.meteo_france_data.scm_models_data.visualization.main_study_visualizer import \ + study_iterator_global, SCM_STUDY_CLASS_TO_ABBREVIATION +from extreme_data.meteo_france_data.scm_models_data.visualization.study_visualizer import \ + StudyVisualizer +from projects.exceeding_snow_loads.utils import dpi_paper1_figure + + +def tuples_for_examples_paper1(examples_for_the_paper=True): + if examples_for_the_paper: + + marker_altitude_massif_name_for_paper1 = [ + ('mediumpurple', 900, 'Ubaye'), + ('darkmagenta', 1800, 'Vercors'), + # ('mediumpurple', 2700, 'Beaufortain'), + ] + else: + marker_altitude_massif_name_for_paper1 = [ + ('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 + we also choose them because they belong to a different climatic area + :return: + """ + save_to_file = False + study_class = SafranSnowfall1Day + + examples_for_the_paper = True + + ax = plt.gca() + if examples_for_the_paper: + # ax.set_ylim([0, 20]) + # ax.set_yticks(list(range(0, 21, 2))) + linewidth = 5 + else: + linewidth = 3 + + marker_altitude_massif_name_for_paper1 = tuples_for_examples_paper1(examples_for_the_paper) + + altitude_to_linestyle = OrderedDict() + first_altitude = 900 + second_altitude = 2100 + altitude_to_linestyle[first_altitude] = 'dashed' + altitude_to_linestyle[second_altitude] = 'dotted' + for altitude, linestyle in altitude_to_linestyle.items(): + for study in study_iterator_global([study_class], altitudes=[altitude]): + study_visualizer = StudyVisualizer(study, save_to_file=save_to_file, + verbose=True, + multiprocessing=True) + snow_abbreviation = SCM_STUDY_CLASS_TO_ABBREVIATION[study_class] + tight_pad = {'h_pad': 0.2} + snow_abbreviation = 'max ' + snow_abbreviation + for color, _, massif_name in marker_altitude_massif_name_for_paper1[::-1]: + last_plot = color == "magenta" and altitude == second_altitude + label = '{} massif at {}m'.format(massif_name, altitude) + study_visualizer.visualize_max_graphs_poster(massif_name, altitude, snow_abbreviation, color, label, + last_plot, ax, tight_pad=tight_pad, + dpi=dpi_paper1_figure, + linewidth=linewidth, + linestyle=linestyle) + + +if __name__ == '__main__': + max_graph_annual_maxima_poster() diff --git a/projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/main_snowfall_article.py b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/main_snowfall_article.py similarity index 91% rename from projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/main_snowfall_article.py rename to projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/main_snowfall_article.py index 282300f3e25efa01346f78767c08e10318302401..5a9ccf61c32ae9b8232d0d7de9ff0acb9876cd22 100644 --- a/projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/main_snowfall_article.py +++ b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/main_snowfall_article.py @@ -4,11 +4,11 @@ from multiprocessing.pool import Pool import matplotlib as mpl from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall1Day -from projects.contrasting_trends_in_snow_loads.snowfall_versus_time_and_altitude.snowfall_plot import \ +from projects.contrasting_trends_in_snow_loads.article2_snowfall_versus_time_and_altitude.snowfall_plot import \ plot_snowfall_mean, plot_snowfall_time_derivative_mean -from projects.contrasting_trends_in_snow_loads.snowfall_versus_time_and_altitude.study_visualizer_for_mean_values import \ +from projects.contrasting_trends_in_snow_loads.article2_snowfall_versus_time_and_altitude.study_visualizer_for_mean_values import \ StudyVisualizerForMeanValues -from projects.contrasting_trends_in_snow_loads.snowfall_versus_time_and_altitude.validation_plot import validation_plot +from projects.contrasting_trends_in_snow_loads.article2_snowfall_versus_time_and_altitude.validation_plot import validation_plot from projects.exceeding_snow_loads.section_results.plot_trend_curves import plot_trend_map mpl.rcParams['text.usetex'] = True diff --git a/projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/snowfall_plot.py b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/snowfall_plot.py similarity index 97% rename from projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/snowfall_plot.py rename to projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/snowfall_plot.py index 2565d6c1d413f7be167cb68437879e43e1be8c32..cc68f21a41aa825804bf4de35d22583222578379 100644 --- a/projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/snowfall_plot.py +++ b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/snowfall_plot.py @@ -7,7 +7,7 @@ from sklearn.linear_model import LinearRegression from extreme_data.meteo_france_data.scm_models_data.visualization.main_study_visualizer import \ SCM_STUDY_CLASS_TO_ABBREVIATION from extreme_data.meteo_france_data.scm_models_data.visualization.plot_utils import plot_against_altitude -from projects.contrasting_trends_in_snow_loads.snowfall_versus_time_and_altitude.study_visualizer_for_mean_values import \ +from projects.contrasting_trends_in_snow_loads.article2_snowfall_versus_time_and_altitude.study_visualizer_for_mean_values import \ StudyVisualizerForMeanValues diff --git a/projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/study_visualizer_for_mean_values.py b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/study_visualizer_for_mean_values.py similarity index 100% rename from projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/study_visualizer_for_mean_values.py rename to projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/study_visualizer_for_mean_values.py diff --git a/projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/validation_plot.py b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/validation_plot.py similarity index 97% rename from projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/validation_plot.py rename to projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/validation_plot.py index 32c30b15aa6aa229cb3d67cc69a916ff7b0736e1..99479248ffb76d7d38801aa154317aab0f055319 100644 --- a/projects/contrasting_trends_in_snow_loads/snowfall_versus_time_and_altitude/validation_plot.py +++ b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/validation_plot.py @@ -4,7 +4,7 @@ import matplotlib.pyplot as plt from extreme_data.meteo_france_data.scm_models_data.visualization.main_study_visualizer import \ SCM_STUDY_CLASS_TO_ABBREVIATION -from projects.contrasting_trends_in_snow_loads.snowfall_versus_time_and_altitude.study_visualizer_for_mean_values import \ +from projects.contrasting_trends_in_snow_loads.article2_snowfall_versus_time_and_altitude.study_visualizer_for_mean_values import \ StudyVisualizerForMeanValues from projects.ogorman.gorman_figures.figure1.study_visualizer_for_double_stationary_fit import \ StudyVisualizerForReturnLevelChange