An error occurred while loading the file. Please try again.
-
Le Roux Erwan authored55041bcd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
from experiment.meteo_france_data.scm_models_data.crocus.crocus import CrocusDepth, CrocusSweTotal, CrocusSwe3Days
from experiment.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall
from experiment.meteo_france_data.scm_models_data.visualization.hypercube_visualization.altitude_year_hypercube_visualizer import \
Altitude_Hypercube_Year_Visualizer, AltitudeHypercubeVisualizerWithoutTrendType
from experiment.meteo_france_data.scm_models_data.visualization.study_visualization.main_study_visualizer import \
SCM_STUDIES
from experiment.trend_analysis.univariate_test.gev_trend_test_one_parameter import GevScaleTrendTest, \
GevLocationTrendTest
from experiment.trend_analysis.univariate_test.gev_trend_test_two_parameters import GevLocationAndScaleTrendTest
from experiment.paper1.utils import get_full_altitude_visualizer
POSTER_ALTITUDES = [900, 1800, 2700]
import matplotlib as mpl
mpl.rcParams['hatch.linewidth'] = 0.3
def main_poster_A_non_stationary_model_choice():
nb = 1
for altitude in POSTER_ALTITUDES[:nb]:
for trend_test_class in [GevLocationTrendTest, GevScaleTrendTest, GevLocationAndScaleTrendTest][-nb:]:
vizualiser = get_full_altitude_visualizer(Altitude_Hypercube_Year_Visualizer, altitude=altitude,
exact_starting_year=1958, reduce_strength_array=False,
trend_test_class=trend_test_class,
)
# vizualiser.save_to_file = False
vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False)
def main_poster_B_starting_years_analysis():
nb = 3
for altitude in POSTER_ALTITUDES[:nb]:
for trend_test_class in [GevLocationAndScaleTrendTest]:
# 1958 as starting year
vizualiser = get_full_altitude_visualizer(Altitude_Hypercube_Year_Visualizer, altitude=altitude,
exact_starting_year=1958, reduce_strength_array=False,
trend_test_class=trend_test_class,
)
for d in [True, False]:
vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False,
display_trend_color=d)
# vizualiser.save_to_file = False
vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False)
# Optimal common starting year
vizualiser = get_full_altitude_visualizer(AltitudeHypercubeVisualizerWithoutTrendType, altitude=altitude,
reduce_strength_array=True,
trend_test_class=trend_test_class,
offset_starting_year=20)
res = vizualiser.visualize_year_trend_test(subtitle_specified='CrocusSwe3Days')
best_year = res[0][1]
vizualiser = get_full_altitude_visualizer(Altitude_Hypercube_Year_Visualizer, altitude=altitude,
exact_starting_year=best_year, reduce_strength_array=False,
trend_test_class=trend_test_class)
for d in [True, False]:
vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False,
display_trend_color=d)
# Individual most likely starting year for each massif
vizualiser = get_full_altitude_visualizer(Altitude_Hypercube_Year_Visualizer, altitude=altitude,
reduce_strength_array=False,
trend_test_class=trend_test_class,
offset_starting_year=20)
for d in [True, False]:
vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False,
display_trend_color=d)
# def main_poster_B_test():
# nb = 3
# for altitude in POSTER_ALTITUDES[:1]:
# for trend_test_class in [GevLocationAndScaleTrendTest]:
# # # 1958 as starting year
# vizualiser = get_full_altitude_visualizer(Altitude_Hypercube_Year_Visualizer, altitude=altitude,
# exact_starting_year=1958, reduce_strength_array=False,
# trend_test_class=trend_test_class,
# )
# # vizualiser.save_to_file = False
# vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False,
# display_trend_color=False)
# vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False,
# display_trend_color=True)
# # # Optimal common starting year
# vizualiser = get_full_altitude_visualizer(AltitudeHypercubeVisualizerWithoutTrendType, altitude=altitude,
# reduce_strength_array=True,
# trend_test_class=trend_test_class,
# offset_starting_year=20)
# res = vizualiser.visualize_year_trend_test(subtitle_specified='CrocusSwe3Days')
# best_year = res[0][1]
# vizualiser = get_full_altitude_visualizer(Altitude_Hypercube_Year_Visualizer, altitude=altitude,
# exact_starting_year=best_year, reduce_strength_array=False,
# trend_test_class=trend_test_class)
# vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False,
# display_trend_color=False)
# vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False,
# display_trend_color=True)
# # vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False)
# # Individual most likely starting year for each massif
# # vizualiser = get_full_altitude_visualizer(Altitude_Hypercube_Year_Visualizer, altitude=altitude,
# # reduce_strength_array=False,
# # trend_test_class=trend_test_class,
# # offset_starting_year=50)
# # # vizualiser.save_to_file = False
# # vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=True,
# # display_trend_color=False)
def main_poster_C_orientation_analysis():
"""By default the slope is equal to 20"""
nb = 0
cardinal_orientations = [0.0, 90.0, 180.0, 270.0]
trend_test_class = GevLocationAndScaleTrendTest
for altitude in POSTER_ALTITUDES[nb:]:
study_class = CrocusSwe3Days
for orientation in cardinal_orientations[nb:]:
vizualiser = get_full_altitude_visualizer(Altitude_Hypercube_Year_Visualizer, altitude=altitude,
exact_starting_year=1958, reduce_strength_array=False,
trend_test_class=trend_test_class,
study_class=study_class,
orientation=orientation)
vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False)
def main_poster_D_other_quantities_analysis():
nb = 3
trend_test_class = GevLocationAndScaleTrendTest
for altitude in POSTER_ALTITUDES[:nb]:
for study_class in SCM_STUDIES[:nb]:
vizualiser = get_full_altitude_visualizer(Altitude_Hypercube_Year_Visualizer, altitude=altitude,
exact_starting_year=1958, reduce_strength_array=False,
trend_test_class=trend_test_class,
study_class=study_class)
vizualiser.visualize_massif_trend_test_one_altitude(poster_plot=True, write_text_on_massif=False)
if __name__ == '__main__':
# main_poster_A_non_stationary_model_choice()
main_poster_B_starting_years_analysis()
# main_poster_C_orientation_analysis()
# main_poster_D_other_quantities_analysis()