diff --git a/experiment/meteo_france_data/scm_models_data/abstract_study.py b/experiment/meteo_france_data/scm_models_data/abstract_study.py index d32aa5424912f29f73e2c3d00ddce84c59d52a22..66ca5708e0d1ffd5d0a9c0e148101ed298c4a026 100644 --- a/experiment/meteo_france_data/scm_models_data/abstract_study.py +++ b/experiment/meteo_france_data/scm_models_data/abstract_study.py @@ -437,8 +437,8 @@ class AbstractStudy(object): # Add legend for the marker if massif_name_to_marker_style is not None: - legend_elements = cls.get_legend_for_model_symbol(marker_style_to_label_name, markersize=8) - ax.legend(handles=legend_elements[:], loc='upper right') + legend_elements = cls.get_legend_for_model_symbol(marker_style_to_label_name, markersize=7) + ax.legend(handles=legend_elements[:], loc='upper right', prop={'size': 9}) # ax.legend(handles=legend_elements[4:], bbox_to_anchor=(0.01, 0.03), loc='lower left') ax.annotate(' '.join(filled_marker_legend_list), xy=(0.05, 0.015), xycoords='axes fraction', fontsize=7) diff --git a/experiment/meteo_france_data/scm_models_data/visualization/study_visualization/study_visualizer.py b/experiment/meteo_france_data/scm_models_data/visualization/study_visualization/study_visualizer.py index df61a53190e7e70acb0c8dd1dba49568f37d4c27..1a221eb9f0275056af692d21584f202b502e8990 100644 --- a/experiment/meteo_france_data/scm_models_data/visualization/study_visualization/study_visualizer.py +++ b/experiment/meteo_france_data/scm_models_data/visualization/study_visualization/study_visualizer.py @@ -639,7 +639,7 @@ class StudyVisualizer(VisualizationParameters): ax.plot(x, y, color=color, linewidth=linewidth, label=label, linestyle=linestyle) # ax.set_ylabel('{} (in {})'.format(snow_abbreviation, self.study.variable_unit), color=color, fontsize=15) - ax.xaxis.set_ticks(x[2::10]) + ax.xaxis.set_ticks(x[1::10]) ax.tick_params(axis='both', which='major', labelsize=13) plot_name = 'Annual maxima of {} in {} at {}m'.format(snow_abbreviation, massif_name, altitude) self.plot_name = plot_name diff --git a/papers/exceeding_snow_loads/data/main_example_swe_total_plot.py b/papers/exceeding_snow_loads/data/main_example_swe_total_plot.py index cbfe15e38b7ad3774be3b97693c05997af80eb93..d65e6479c555791b4ec766d819f4f71432998706 100644 --- a/papers/exceeding_snow_loads/data/main_example_swe_total_plot.py +++ b/papers/exceeding_snow_loads/data/main_example_swe_total_plot.py @@ -35,7 +35,7 @@ def max_graph_annual_maxima_poster(): save_to_file = True study_class = CrocusSnowLoadTotal - examples_for_the_paper = False + examples_for_the_paper = True ax = plt.gca() if examples_for_the_paper: diff --git a/papers/exceeding_snow_loads/result_trends_and_return_levels/main_result_trends_and_return_levels.py b/papers/exceeding_snow_loads/result_trends_and_return_levels/main_result_trends_and_return_levels.py index a3015cab48d10fc741a63230af0c3fab3b754226..12e04ac9a5f6d458d10b76cb9863f1acc1b8d612 100644 --- a/papers/exceeding_snow_loads/result_trends_and_return_levels/main_result_trends_and_return_levels.py +++ b/papers/exceeding_snow_loads/result_trends_and_return_levels/main_result_trends_and_return_levels.py @@ -67,10 +67,10 @@ def intermediate_result(altitudes, massif_names=None, # Plots 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) + # 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(): @@ -90,11 +90,11 @@ def major_result(): if __name__ == '__main__': - major_result() - # intermediate_result(altitudes=[900], massif_names=['Beaufortain', 'Vercors'], - # uncertainty_methods=[ConfidenceIntervalMethodFromExtremes.my_bayes, - # ConfidenceIntervalMethodFromExtremes.ci_mle][1:], - # multiprocessing=True) + # major_result() + intermediate_result(altitudes=[1800], massif_names=None, + uncertainty_methods=[ConfidenceIntervalMethodFromExtremes.my_bayes, + ConfidenceIntervalMethodFromExtremes.ci_mle][1:], + multiprocessing=True) # intermediate_result(altitudes=[900, 1200], massif_names=['Maurienne'], # uncertainty_methods=[ConfidenceIntervalMethodFromExtremes.my_bayes, # ConfidenceIntervalMethodFromExtremes.ci_mle][1:], diff --git a/papers/exceeding_snow_loads/result_trends_and_return_levels/plot_selection_curves.py b/papers/exceeding_snow_loads/result_trends_and_return_levels/plot_selection_curves.py index cb17d737e84090ef8fb5577cd5cc8b495a9a0a84..454b0238c011bf8d8464f7ecbcf666818d800de8 100644 --- a/papers/exceeding_snow_loads/result_trends_and_return_levels/plot_selection_curves.py +++ b/papers/exceeding_snow_loads/result_trends_and_return_levels/plot_selection_curves.py @@ -45,10 +45,10 @@ def plot_selection_curves(altitude_to_visualizer: Dict[int, StudyVisualizerForNo labelsize = 25 linewidth = 3 x = [10 * (i+1) for i in range(len(select_list))] - ax.bar(x, select_list, width=width, color='grey', edgecolor='grey', label='Non significative model', + ax.bar(x, select_list, width=width, color='grey', edgecolor='grey', label='Non significant model', linewidth=linewidth) ax.bar(x, selected_and_signifcative_list, width=width, color='black', edgecolor='black', - label='Significative model', + label='Significant model', linewidth=linewidth) ax.legend(loc='upper right', prop={'size': size}) ax.set_ylabel(' Frequency of selected model w.r.t all time series \n ' diff --git a/papers/exceeding_snow_loads/result_trends_and_return_levels/plot_trend_curves.py b/papers/exceeding_snow_loads/result_trends_and_return_levels/plot_trend_curves.py index 225345afacb6d0d3dc1f74441451a8fca835d59d..890084bf39eb8d5a28e9c4951b8d4c348a9c3a11 100644 --- a/papers/exceeding_snow_loads/result_trends_and_return_levels/plot_trend_curves.py +++ b/papers/exceeding_snow_loads/result_trends_and_return_levels/plot_trend_curves.py @@ -11,11 +11,10 @@ from papers.exceeding_snow_loads.study_visualizer_for_non_stationary_trends impo def plot_trend_map(altitude_to_visualizer): # Compute common max value for the colorbar max_abs_changes_above_900 = [visualizer.max_abs_change - for altitude, visualizer in altitude_to_visualizer.items() - if altitude >= 900] + for altitude, visualizer in altitude_to_visualizer.items() + if altitude >= 900] max_abs_tdrl_above_900 = max(max_abs_changes_above_900) if len(max_abs_changes_above_900) > 0 else None - max_abs_tdrl_below_900 = max(altitude_to_visualizer[300].max_abs_change, altitude_to_visualizer[600].max_abs_change) for altitude, visualizer in altitude_to_visualizer.items(): if 900 <= altitude <= 4200: add_color = (visualizer.study.altitude - 1500) % 900 == 0 @@ -24,7 +23,9 @@ def plot_trend_map(altitude_to_visualizer): if altitude == 2700: visualizer.plot_trends(max_abs_tdrl_above_900, add_colorbar=True) else: - visualizer.plot_trends(max_abs_tdrl_below_900, add_colorbar=altitude==600) + max_abs_tdrl_below_900 = max(altitude_to_visualizer[300].max_abs_change, + altitude_to_visualizer[600].max_abs_change) + visualizer.plot_trends(max_abs_tdrl_below_900, add_colorbar=altitude == 600) def plot_trend_curves(altitude_to_visualizer: Dict[int, StudyVisualizerForNonStationaryTrends]): diff --git a/papers/exceeding_snow_loads/study_visualizer_for_non_stationary_trends.py b/papers/exceeding_snow_loads/study_visualizer_for_non_stationary_trends.py index 4bd5b006d193ce7c15c667376e49a48134239c51..724c8063e024f28f98af2c1d020ff1fd2be62c19 100644 --- a/papers/exceeding_snow_loads/study_visualizer_for_non_stationary_trends.py +++ b/papers/exceeding_snow_loads/study_visualizer_for_non_stationary_trends.py @@ -111,6 +111,7 @@ class StudyVisualizerForNonStationaryTrends(StudyVisualizer): @cached_property def massif_name_to_non_null_years_and_maxima(self): + # return self.massif_name_to_years_and_maxima d = {} for m, (years, maxima) in self.massif_name_to_years_and_maxima.items(): mask = np.nonzero(maxima)