From e394f7fa7ef3a5fb3c17b6e1a143ed6108bdb22b Mon Sep 17 00:00:00 2001 From: Le Roux Erwan <erwan.le-roux@irstea.fr> Date: Wed, 8 Apr 2020 19:07:56 +0200 Subject: [PATCH] [contrasting project] add comparative_curve_wrt_altitude.py to provide box plot wrt the altitude --- .../figure1/comparative_curve_wrt_altitude.py | 13 ++++++++----- .../figure1_mean_ratio_return_level_ratio.py | 6 +++--- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/projects/contrasting_trends_in_snow_loads/gorman_figures/figure1/comparative_curve_wrt_altitude.py b/projects/contrasting_trends_in_snow_loads/gorman_figures/figure1/comparative_curve_wrt_altitude.py index 610fb2d6..620a12e4 100644 --- a/projects/contrasting_trends_in_snow_loads/gorman_figures/figure1/comparative_curve_wrt_altitude.py +++ b/projects/contrasting_trends_in_snow_loads/gorman_figures/figure1/comparative_curve_wrt_altitude.py @@ -1,4 +1,6 @@ from collections import OrderedDict +from itertools import chain + import matplotlib.pyplot as plt import numpy as np @@ -65,9 +67,10 @@ class ComparativeCurveWrtAltitude(object): ax2.boxplot(x.values(), positions=self.altitudes, widths=width) ax2.set_xlim([min(self.altitudes) - width, max(self.altitudes) + width]) if relative_change: - ax2.set_ylabel('Relative change in {} (%)'.format((ylabel.split('(')[0]))) + ylabel2 = 'relative change in {} (%)'.format((ylabel.split('(')[0])) else: - ax2.set_ylabel('Change in {}'.format(ylabel)) + ylabel2 = 'change in {}'.format(ylabel) + ax2.set_ylabel('Distribution of ' + ylabel2) # ax: Mean plots on top values = [list(v.values()) for v in [altitude_to_mean_value_before, altitude_to_mean_value_after]] @@ -82,9 +85,9 @@ class ComparativeCurveWrtAltitude(object): ax.set_xlabel('Altitude (m)') # Set same limits to align axis - a = np.array(list(x.values())) - all_values = list(a.flatten()) + values[0] + values[1] - print(type(all_values)) + a = list(x.values()) + a = list(chain.from_iterable(a)) + all_values = a + values[0] + values[1] epsilon = 0.03 * (max(all_values) - min(all_values)) ylim = [min(all_values) - epsilon, max(all_values) + epsilon] ax.set_ylim(ylim) diff --git a/projects/contrasting_trends_in_snow_loads/gorman_figures/figure1/figure1_mean_ratio_return_level_ratio.py b/projects/contrasting_trends_in_snow_loads/gorman_figures/figure1/figure1_mean_ratio_return_level_ratio.py index 74159dbe..af9cbc34 100644 --- a/projects/contrasting_trends_in_snow_loads/gorman_figures/figure1/figure1_mean_ratio_return_level_ratio.py +++ b/projects/contrasting_trends_in_snow_loads/gorman_figures/figure1/figure1_mean_ratio_return_level_ratio.py @@ -16,8 +16,8 @@ from projects.contrasting_trends_in_snow_loads.gorman_figures.figure1.study_visu def load_altitude_to_study_visualizer(study_class, save_to_file=True) -> OrderedDict: altitude_to_study_visualizer = OrderedDict() - # for altitude in ALL_ALTITUDES_WITHOUT_NAN[2:10]: - for altitude in ALL_ALTITUDES_WITHOUT_NAN[2:5]: + for altitude in ALL_ALTITUDES_WITHOUT_NAN[2:10]: + # for altitude in ALL_ALTITUDES_WITHOUT_NAN[2:5]: return_period = 30 study_visualizer = StudyVisualizerForReturnLevelChange(study_class=study_class, altitude=altitude, @@ -29,7 +29,7 @@ def load_altitude_to_study_visualizer(study_class, save_to_file=True) -> Ordered def plots(): - for study_class in [SafranSnowfall1Day, SafranSnowfall3Days, SafranSnowfall5Days, SafranSnowfall7Days][:1]: + for study_class in [SafranSnowfall1Day, SafranSnowfall3Days, SafranSnowfall5Days, SafranSnowfall7Days][:]: altitude_to_study_visualizer = load_altitude_to_study_visualizer(study_class, save_to_file=True) # for v in altitude_to_study_visualizer.values(): # v.all_plots() -- GitLab