Commit cb559ec3 authored by Le Roux Erwan's avatar Le Roux Erwan
Browse files

[HYPERCUBE] fix minor display/parameter issues. run plot woth with exact starting year.

parent 84ec6e70
No related merge requests found
Showing with 46 additions and 17 deletions
+46 -17
......@@ -33,7 +33,7 @@ class AbstractHypercubeVisualizer(object):
if exact_starting_year is not None:
assert first_starting_year is None
assert last_starting_year is None
self.first_starting_year, self.first_starting_year = exact_starting_year, exact_starting_year
self.first_starting_year, self.last_starting_year = exact_starting_year, exact_starting_year
else:
default_first_starting_year, *_, default_last_starting_year = self.all_potential_starting_years
self.first_starting_year = first_starting_year if first_starting_year is not None else default_first_starting_year
......@@ -46,6 +46,7 @@ class AbstractHypercubeVisualizer(object):
if self.verbose:
print('Hypercube with parameters:')
print('First starting year: {}, Last starting year: {}'.format(self.first_starting_year, self.last_starting_year))
print('Starting years:', self.starting_years)
print('Trend test class:', get_display_name_from_object_type(self.trend_test_class))
......@@ -61,7 +62,8 @@ class AbstractHypercubeVisualizer(object):
@cached_property
def starting_years(self):
starting_years = [year for year in self.all_potential_starting_years if self.first_starting_year <= year <= self.last_starting_year]
starting_years = [year for year in self.all_potential_starting_years
if self.first_starting_year <= year <= self.last_starting_year]
if self.nb_data_for_fast_mode is not None:
starting_years = starting_years[:self.nb_data_for_fast_mode]
return starting_years
......
......@@ -84,7 +84,8 @@ class AltitudeHypercubeVisualizer(AbstractHypercubeVisualizer):
if xlabel != 'starting years':
labels.remove('starting years')
common_txt = 'averaged on {}'.format(' & '.join(labels))
common_txt += ' with any starting year <= {}'.format(str(self.last_starting_year))
common_txt += ' with any starting year between {} and {}'.format(self.first_starting_year,
self.last_starting_year)
return common_txt
def visualize_trend_test_evolution(self, reduction_function, xlabel, xlabel_values, axes=None, marker='o',
......@@ -223,8 +224,7 @@ class AltitudeHypercubeVisualizer(AbstractHypercubeVisualizer):
def load_axes_for_trend_test_repartition(self, nb_rows):
nb_trend_type = len(self.display_trend_type_to_style)
fig, axes = plt.subplots(nb_rows, nb_trend_type, figsize=self.study_visualizer.figsize,
constrained_layout=True)
fig, axes = plt.subplots(nb_rows, nb_trend_type, figsize=self.study_visualizer.figsize)
return axes
@property
......
......@@ -116,10 +116,10 @@ def fast_altitude_without_trend_type_hypercube_extended():
altitudes=altitudes)]
altitude_to_visualizer = OrderedDict(zip(altitudes, visualizers))
visualizer = QuantityHypercubeWithoutTrendExtended(altitude_to_visualizer,
save_to_file=save_to_file,
trend_test_class=trend_test_class,
nb_data_reduced_for_speed=nb_data_reduced_for_speed,
last_starting_year=last_starting_year)
save_to_file=save_to_file,
trend_test_class=trend_test_class,
nb_data_reduced_for_speed=nb_data_reduced_for_speed,
last_starting_year=last_starting_year)
visualizer.vsualize_year_trend_by_regions_and_altitudes()
# visualizer = QuantityHypercubeWithoutTrend(altitude_to_visualizer,
......@@ -131,13 +131,13 @@ def fast_altitude_without_trend_type_hypercube_extended():
def fast_altitude_year_hypercube_extended():
save_to_file = False
save_to_file = True
only_first_one = False
nb_data_reduced_for_speed = True
altitudes = [ALL_ALTITUDES[3], ALL_ALTITUDES[-7]]
for study_class in SCM_STUDIES[:2]:
for exact_starting_year in [1982]:
for trend_test_class in [GevLocationChangePointTest, GevScaleChangePointTest, GevShapeChangePointTest][:2]:
for study_class in SCM_STUDIES[:1]:
for exact_starting_year in [1980, 1981]:
for trend_test_class in [GevLocationChangePointTest, GevScaleChangePointTest, GevShapeChangePointTest][:1]:
visualizers = [
StudyVisualizer(study, temporal_non_stationarity=True, verbose=False, multiprocessing=True)
for study in study_iterator(study_class=study_class, only_first_one=only_first_one,
......@@ -146,7 +146,7 @@ def fast_altitude_year_hypercube_extended():
visualizer = AltitudeHypercubeVisualizerExtended(altitude_to_visualizer, save_to_file=save_to_file,
trend_test_class=trend_test_class,
nb_data_reduced_for_speed=nb_data_reduced_for_speed,
last_starting_year=exact_starting_year)
exact_starting_year=exact_starting_year)
# visualizer.visualize_year_trend_test()
# visualizer.visualize_altitude_trend_test()
# visualizer.visualize_massif_trend_test_by_altitudes()
......@@ -181,6 +181,31 @@ def full_altitude_year_hypercube():
visualizer.visualize_altitude_trend_test()
def full_exact_altitude_year_hypercube():
save_to_file = True
only_first_one = False
nb_data_reduced_for_speed = False
altitudes = ALL_ALTITUDES[3:-6]
for study_class in SCM_STUDIES[:]:
for trend_test_class in [GevLocationChangePointTest, GevScaleChangePointTest,
GevShapeChangePointTest][:1]:
years = [1980, 1981, 1982][:]
for exact_starting_year in years:
visualizers = [
StudyVisualizer(study, temporal_non_stationarity=True, verbose=False, multiprocessing=True)
for study in study_iterator(study_class=study_class, only_first_one=only_first_one,
altitudes=altitudes)]
altitude_to_visualizer = OrderedDict(zip(altitudes, visualizers))
visualizer = Altitude_Hypercube_Year_Visualizer(altitude_to_visualizer,
save_to_file=save_to_file,
trend_test_class=trend_test_class,
nb_data_reduced_for_speed=nb_data_reduced_for_speed,
exact_starting_year=exact_starting_year)
visualizer.visualize_year_trend_test()
visualizer.visualize_massif_trend_test()
visualizer.visualize_altitude_trend_test()
def full_altitude_year_hypercube_extended():
save_to_file = True
only_first_one = False
......@@ -250,7 +275,7 @@ def fast_quantity_altitude_hypercube():
quantity_altitude_tuples = list(product(study_classes_str, altitudes))
quantity_altitude_to_visualizer = OrderedDict(zip(quantity_altitude_tuples, visualizers))
visualizer = QuantityHypercubeWithoutTrend(quantity_altitude_to_visualizer, save_to_file=save_to_file,
trend_test_class=trend_test_class, nb_data_reduced_for_speed=True)
trend_test_class=trend_test_class, nb_data_reduced_for_speed=True)
visualizer.visualize_year_trend_test()
# visualizer.visualize_massif_trend_test()
# visualizer.visualize_altitude_trend_test()
......@@ -261,9 +286,11 @@ def main_run():
# fast_altitude_year_hypercube()
# fast_quantity_altitude_hypercube()
# fast_altitude_without_trend_type_hypercube_extended()
# fast_altitude_year_hypercube_extended()
full_exact_altitude_year_hypercube()
# full_altitude_year_hypercube__without_trend_extended()
full_quantity_altitude_hypercube()
# fast_altitude_without_trend_type_hypercube_extended()
# full_quantity_altitude_hypercube()
# fast_altitude_year_hypercube_extended()
# full_altitude_year_hypercube_extended()
......
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