From 438ef56df6258d287dfef0cd138bad57b0fc835d Mon Sep 17 00:00:00 2001 From: Denise sur Lya Date: Mon, 19 Apr 2021 14:49:25 +0200 Subject: [PATCH] =?utf8?q?=C3=A9chelle=20adapt=C3=A9e=20si=20on=20demande?= =?utf8?q?=20une=20donn=C3=A9e=20sup=C3=A9rieure=20au=20max.?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- calculs_extrapole.py | 10 +++++----- gestion_donnees.py | 5 +++++ trace_courbe.py | 6 +++++- 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): def formate_extrapole(nb_extra): """ Renvoie une chaîne qui dit sur cb on a extrapolé""" - message="extrapolation sur " + message="extrapolation à partir " if nb_extra== 0: - message+="l'ensemble des données" + message+="de l'ensemble des données" elif nb_extra==1: - message+="la donnée la plus récente" + message+="de la donnée la plus récente" else: - message+="les "+str(nb_extra)+" dernières données" + message+="des "+str(nb_extra)+" dernières données" return message def formate_interpole(): - return "interpolation sur les données existantes" \ No newline at end of file + 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): for typed in CONFIG["liste_typedonnees"]: listes_jours[typed],listes_donnees[typed] = gere_donnees(data,config["naissance"],typed,liste_err) + # Si on veut extrapoler au-delà du jour maxi, on adapte + # Si on a choisi la même échelle de données if config["memechelle"] == "oui": config["non_sauve"]["maxi"] = calcule_max_graphique([j for lj in listes_jours.values() for j in lj]) + # En cas d'extrapolation, on prend le maxi + if config["non_sauve"]["calculextradata_type"] !="" and config["non_sauve"]["calculextradata_age"]>config["non_sauve"]["maxi"]: + config["non_sauve"]["maxi"] = int(config["non_sauve"]["calculextradata_age"]) +1 config["non_sauve"]["unite"] = choix_unite(config["non_sauve"]["maxi"]) 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 @@ from configuration import CONFIG import gestionOMS as oms import gestion_unites as u -from gestion_donnees import calcule_max_graphique, convertit_jours_vers_python, convertit_age_vers_texte +from gestion_donnees import calcule_max_graphique, convertit_jours_vers_python from gestion_erreurs import debug, erreur, warning from calculs_extrapole import calcule_donnee_extrapolee, calcule_age_extrapole, interpole_lineaire, interpole_lineaire_ordonnee, formate_resultat_donnee, formate_resultat_age, formate_interpole, formate_extrapole @@ -40,6 +40,10 @@ def cree_figure(conf,l_jours,l_poids,typedonnee,liste_extracalculs, liste_err): jour_maxi = conf["non_sauve"]["maxi"]+1 else: jour_maxi = conf["maxi"]+1 + + # Si on cherche à extrapoler au-delà + if conf["non_sauve"]["calculextradata_type"] == typedonnee and conf["non_sauve"]["calculextradata_age"]>jour_maxi: + jour_maxi = int(conf["non_sauve"]["calculextradata_age"]) +1 # On s'assure que c'est bien compris dans les bornes jour_maxi = max(CONFIG["jours_mini_courbe"],min(jour_maxi,CONFIG["jours_maxi_courbe"])) -- 2.41.0