diff --git a/experiment/meteo_france_SCM_study/main_visualize.py b/experiment/meteo_france_SCM_study/main_visualize.py index b522100ddc8d18374b2f383b0036d6c98ce0d1da..2cf6622d1f95b32615886ad50f6cbccd5b062d78 100644 --- a/experiment/meteo_france_SCM_study/main_visualize.py +++ b/experiment/meteo_france_SCM_study/main_visualize.py @@ -33,7 +33,7 @@ def study_iterator(study_class, only_first_one=False, both_altitude=False, verbo def extended_visualization(): - for study_class in SCM_EXTENDED_STUDIES[1:2]: + for study_class in SCM_EXTENDED_STUDIES[-1:]: for study in study_iterator(study_class, only_first_one=True): study_visualizer = StudyVisualizer(study) # study_visualizer.visualize_all_kde_graphs() @@ -57,6 +57,7 @@ def complete_analysis(only_first_one=False): for extended_study in study_iterator(extended_study_class, only_first_one=only_first_one): study_visualizer = StudyVisualizer(extended_study, save_to_file=True) study_visualizer.visualize_all_mean_and_max_graphs() + study_visualizer.visualize_all_experimental_law() print('Study normal') for study in study_iterator(study_class, only_first_one=only_first_one): study_visualizer = StudyVisualizer(study, save_to_file=True) diff --git a/experiment/meteo_france_SCM_study/safran/safran_visualizer.py b/experiment/meteo_france_SCM_study/safran/safran_visualizer.py index 65b17f7f93e91592baa89f04109d23875515b1b2..90ac03a88838edacb52a1382a9c1b3e823da4946 100644 --- a/experiment/meteo_france_SCM_study/safran/safran_visualizer.py +++ b/experiment/meteo_france_SCM_study/safran/safran_visualizer.py @@ -23,7 +23,7 @@ from extreme_estimator.margin_fits.gpd.gpdmle_fit import GpdMleFit from extreme_estimator.margin_fits.plot.create_shifted_cmap import get_color_rbga_shifted from spatio_temporal_dataset.dataset.abstract_dataset import AbstractDataset from test.test_utils import load_test_max_stable_models -from utils import get_display_name_from_object_type, VERSION_TIME +from utils import get_display_name_from_object_type, VERSION_TIME, float_to_str_with_only_some_significant_digits class StudyVisualizer(object): @@ -89,7 +89,9 @@ class StudyVisualizer(object): ax.set_ylabel('Density', color=color_kde) ax.set_xlabel(self.study.title) - extraticks = [round(x) for x in sorted(list(x_level_to_color.keys()))] + extraticks = [float(float_to_str_with_only_some_significant_digits(x, nb_digits=2)) + for x in sorted(list(x_level_to_color.keys()))] + extraticks = [extraticks[0], extraticks[-1]] ax.set_xticks(extraticks) ax.set_title(self.study.safran_massif_names[massif_id]) diff --git a/utils.py b/utils.py index 92daa944111b97e75ddbee7c72c7403285d48b55..a27829a27c3ab537dd04b3b02ab9e5a92e60f9b1 100644 --- a/utils.py +++ b/utils.py @@ -6,6 +6,7 @@ VERSION_TIME = str(VERSION).split('.')[0] for c in [' ', ':', '-']: VERSION_TIME = VERSION_TIME.replace(c, '_') + def get_root_path() -> str: return op.dirname(op.abspath(__file__)) @@ -27,6 +28,12 @@ def first(s): return next(iter(s)) +def float_to_str_with_only_some_significant_digits(f, nb_digits) -> str: + assert isinstance(nb_digits, int) + assert nb_digits > 0 + return '%s' % float('%.{}g'.format(nb_digits) % f) + + # todo: these cached property have a weird behavior with inheritence, # when we call the super cached_property in the child method class cached_property(object):