summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenise sur Lya <sekhmet@lya>2021-04-19 14:49:25 +0200
committerDenise sur Lya <sekhmet@lya>2021-04-19 14:49:25 +0200
commit438ef56df6258d287dfef0cd138bad57b0fc835d (patch)
tree9d8b41c1b9ae6757abbcd0266aed4deb1198f0d7
parent3d7da80ac11bb87ab441fb51f93b738be02de2c3 (diff)
downloadoms-438ef56df6258d287dfef0cd138bad57b0fc835d.tar.gz
oms-438ef56df6258d287dfef0cd138bad57b0fc835d.tar.zst
oms-438ef56df6258d287dfef0cd138bad57b0fc835d.zip
échelle adaptée si on demande une donnée supérieure au max.
-rw-r--r--calculs_extrapole.py10
-rw-r--r--gestion_donnees.py5
-rw-r--r--trace_courbe.py6
3 files changed, 15 insertions, 6 deletions
diff --git a/calculs_extrapole.py b/calculs_extrapole.py
index 509402b..fdd4c68 100644
--- a/calculs_extrapole.py
+++ b/calculs_extrapole.py
@@ -177,14 +177,14 @@ def formate_resultat_age(age, donnee, typedonnee, extra, liste_err):
177 177
178def formate_extrapole(nb_extra): 178def formate_extrapole(nb_extra):
179 """ Renvoie une chaîne qui dit sur cb on a extrapolé""" 179 """ Renvoie une chaîne qui dit sur cb on a extrapolé"""
180 message="extrapolation sur " 180 message="extrapolation à partir "
181 if nb_extra== 0: 181 if nb_extra== 0:
182 message+="l'ensemble des données" 182 message+="de l'ensemble des données"
183 elif nb_extra==1: 183 elif nb_extra==1:
184 message+="la donnée la plus récente" 184 message+="de la donnée la plus récente"
185 else: 185 else:
186 message+="les "+str(nb_extra)+" dernières données" 186 message+="des "+str(nb_extra)+" dernières données"
187 return message 187 return message
188 188
189def formate_interpole(): 189def formate_interpole():
190 return "interpolation sur les données existantes" \ No newline at end of file 190 return "interpolation à partir des données existantes" \ No newline at end of file
diff --git a/gestion_donnees.py b/gestion_donnees.py
index 2153a55..7c22997 100644
--- a/gestion_donnees.py
+++ b/gestion_donnees.py
@@ -175,9 +175,14 @@ def web_vers_python(data,liste_err):
175 for typed in CONFIG["liste_typedonnees"]: 175 for typed in CONFIG["liste_typedonnees"]:
176 listes_jours[typed],listes_donnees[typed] = gere_donnees(data,config["naissance"],typed,liste_err) 176 listes_jours[typed],listes_donnees[typed] = gere_donnees(data,config["naissance"],typed,liste_err)
177 177
178 # Si on veut extrapoler au-delà du jour maxi, on adapte
179
178 # Si on a choisi la même échelle de données 180 # Si on a choisi la même échelle de données
179 if config["memechelle"] == "oui": 181 if config["memechelle"] == "oui":
180 config["non_sauve"]["maxi"] = calcule_max_graphique([j for lj in listes_jours.values() for j in lj]) 182 config["non_sauve"]["maxi"] = calcule_max_graphique([j for lj in listes_jours.values() for j in lj])
183 # En cas d'extrapolation, on prend le maxi
184 if config["non_sauve"]["calculextradata_type"] !="" and config["non_sauve"]["calculextradata_age"]>config["non_sauve"]["maxi"]:
185 config["non_sauve"]["maxi"] = int(config["non_sauve"]["calculextradata_age"]) +1
181 config["non_sauve"]["unite"] = choix_unite(config["non_sauve"]["maxi"]) 186 config["non_sauve"]["unite"] = choix_unite(config["non_sauve"]["maxi"])
182 187
183 return (config,listes_jours,listes_donnees) 188 return (config,listes_jours,listes_donnees)
diff --git a/trace_courbe.py b/trace_courbe.py
index 28ee5b4..0c7a1d0 100644
--- a/trace_courbe.py
+++ b/trace_courbe.py
@@ -3,7 +3,7 @@
3from configuration import CONFIG 3from configuration import CONFIG
4import gestionOMS as oms 4import gestionOMS as oms
5import gestion_unites as u 5import gestion_unites as u
6from gestion_donnees import calcule_max_graphique, convertit_jours_vers_python, convertit_age_vers_texte 6from gestion_donnees import calcule_max_graphique, convertit_jours_vers_python
7from gestion_erreurs import debug, erreur, warning 7from gestion_erreurs import debug, erreur, warning
8from calculs_extrapole import calcule_donnee_extrapolee, calcule_age_extrapole, interpole_lineaire, interpole_lineaire_ordonnee, formate_resultat_donnee, formate_resultat_age, formate_interpole, formate_extrapole 8from calculs_extrapole import calcule_donnee_extrapolee, calcule_age_extrapole, interpole_lineaire, interpole_lineaire_ordonnee, formate_resultat_donnee, formate_resultat_age, formate_interpole, formate_extrapole
9 9
@@ -40,6 +40,10 @@ def cree_figure(conf,l_jours,l_poids,typedonnee,liste_extracalculs, liste_err):
40 jour_maxi = conf["non_sauve"]["maxi"]+1 40 jour_maxi = conf["non_sauve"]["maxi"]+1
41 else: 41 else:
42 jour_maxi = conf["maxi"]+1 42 jour_maxi = conf["maxi"]+1
43
44 # Si on cherche à extrapoler au-delà
45 if conf["non_sauve"]["calculextradata_type"] == typedonnee and conf["non_sauve"]["calculextradata_age"]>jour_maxi:
46 jour_maxi = int(conf["non_sauve"]["calculextradata_age"]) +1
43 47
44 # On s'assure que c'est bien compris dans les bornes 48 # On s'assure que c'est bien compris dans les bornes
45 jour_maxi = max(CONFIG["jours_mini_courbe"],min(jour_maxi,CONFIG["jours_maxi_courbe"])) 49 jour_maxi = max(CONFIG["jours_mini_courbe"],min(jour_maxi,CONFIG["jours_maxi_courbe"]))