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

[PAPER 1] modify eurocode plots

parent 4faa115a
No related merge requests found
Showing with 19 additions and 28 deletions
+19 -28
...@@ -55,24 +55,24 @@ class AbstractEurocodeRegion(object): ...@@ -55,24 +55,24 @@ class AbstractEurocodeRegion(object):
raise NotImplementedError raise NotImplementedError
class C1(AbstractEurocodeRegion): class C(AbstractEurocodeRegion):
def __init__(self) -> None: def __init__(self, sad=None) -> None:
super().__init__(0.65, None) super().__init__(0.65, sad)
@classproperty @classproperty
def eurocode_color(self): def eurocode_color(self):
return 'gold' return 'gold'
class C2(AbstractEurocodeRegion): class C1(C):
pass
def __init__(self) -> None:
super().__init__(0.65, 1.35)
@classproperty class C2(C):
def eurocode_color(self):
return 'orange' def __init__(self) -> None:
super().__init__(sad=1.35)
class E(AbstractEurocodeRegion): class E(AbstractEurocodeRegion):
...@@ -94,6 +94,4 @@ class E(AbstractEurocodeRegion): ...@@ -94,6 +94,4 @@ class E(AbstractEurocodeRegion):
@classproperty @classproperty
def eurocode_color(self): def eurocode_color(self):
return 'mediumvioletred' return 'orange'
...@@ -2,26 +2,24 @@ import matplotlib.pyplot as plt ...@@ -2,26 +2,24 @@ import matplotlib.pyplot as plt
from copy import deepcopy, copy from copy import deepcopy, copy
import numpy as np import numpy as np
from experiment.eurocode_data.eurocode_region import C2, E, C1 from experiment.eurocode_data.eurocode_region import C2, E, C1, C
from experiment.eurocode_data.massif_name_to_departement import massif_name_to_eurocode_region from experiment.eurocode_data.massif_name_to_departement import massif_name_to_eurocode_region
from experiment.eurocode_data.utils import EUROCODE_RETURN_LEVEL_STR from experiment.eurocode_data.utils import EUROCODE_RETURN_LEVEL_STR
from experiment.meteo_france_data.scm_models_data.abstract_study import AbstractStudy from experiment.meteo_france_data.scm_models_data.abstract_study import AbstractStudy
from root_utils import get_display_name_from_object_type from root_utils import get_display_name_from_object_type
def main_eurocode_norms(ax=None): def main_eurocode_norms(ax=None):
if ax is None: if ax is None:
ax = plt.gca() ax = plt.gca()
altitudes = np.linspace(200, 2000) altitudes = np.linspace(200, 2000)
for region_class in [C1, C2, E][:]: for region_class in [E, C]:
region_object = region_class() region_object = region_class()
space = ' ' if region_class == E else ' ' label = get_display_name_from_object_type(region_class) + ' ' + 'region'
label = get_display_name_from_object_type(region_class) + space + 'region' region_object.plot_eurocode_snow_load_on_ground_characteristic_value_variable_action(ax, altitudes,
linestyle = '--' if region_class == C2 else '-' label=label,
region_object.plot_eurocode_snow_load_on_ground_characteristic_value_variable_action(ax, altitudes, label=label, linestyle=linestyle) linestyle='-')
if region_class == E: if region_class == C:
ax.xaxis.set_ticks([250 * i for i in range(1, 9)]) ax.xaxis.set_ticks([250 * i for i in range(1, 9)])
ax.tick_params(axis='both', which='major', labelsize=13) ax.tick_params(axis='both', which='major', labelsize=13)
ax.set_ylabel(EUROCODE_RETURN_LEVEL_STR) ax.set_ylabel(EUROCODE_RETURN_LEVEL_STR)
...@@ -30,12 +28,7 @@ def main_eurocode_norms(ax=None): ...@@ -30,12 +28,7 @@ def main_eurocode_norms(ax=None):
ax.set_yticks(list(range(0, 13, 2))) ax.set_yticks(list(range(0, 13, 2)))
ax.set_xlim([0, 2000]) ax.set_xlim([0, 2000])
ax.set_xticks(list(range(0, 2001, 500))) ax.set_xticks(list(range(0, 2001, 500)))
handles, labels = ax.get_legend_handles_labels() ax.legend()
# Copy the handle to not modify the original plot
handle1 = copy(handles[1])
handle1.set_linestyle('-')
handles[1] = handle1
ax.legend(handles, labels)
ax.grid() ax.grid()
plt.show() plt.show()
...@@ -49,5 +42,5 @@ def main_eurocode_map(ax=None): ...@@ -49,5 +42,5 @@ def main_eurocode_map(ax=None):
if __name__ == '__main__': if __name__ == '__main__':
# main_eurocode_norms() main_eurocode_norms()
main_eurocode_map() main_eurocode_map()
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