bug corrigé sur les prémas, à vérifier
authorDenise sur Lya <sekhmet@lya>
Fri, 5 Aug 2022 09:07:36 +0000 (11:07 +0200)
committerDenise sur Lya <sekhmet@lya>
Fri, 5 Aug 2022 09:07:36 +0000 (11:07 +0200)
trace_courbe.py

index 570a08c15c89c5dd21c4b828e0fec829ec7f1f83..ed5f980b584e26e47b20c9f491bfeb6961ef5183 100644 (file)
@@ -46,7 +46,7 @@ def cree_figure(conf,l_jours,l_poids,typedonnee,liste_extracalculs, liste_err, e
             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
@@ -74,7 +74,8 @@ def cree_figure(conf,l_jours,l_poids,typedonnee,liste_extracalculs, liste_err, e
     debug("Prématurité : "+str(prema)+" age corrigé : "+conf["agecorrige"],liste_err)           
     if prema>0 and conf["agecorrige"] == "oui":
         l_jours = [j-prema for j in l_jours]
-        jour_maxi = jour_maxi - prema
+        jour_maxi = max(jour_maxi - prema, 2)
+        ## Si le jour maxi est <0 on met minimum 1 jour quand même !
 
 
     ###################### Conversion des unités ###########################""
@@ -338,10 +339,14 @@ def cree_figure(conf,l_jours,l_poids,typedonnee,liste_extracalculs, liste_err, e
     poids_max = poids_max * 1.05
        
 
+
     ### Repères additionnels éventuels.
     #reperes est une liste qui contient des dictionnaires avec "typed" (type de donnée : âge, etc), "donnee" :
     #la donnée (en jours pour l'âge), et "texte": le texte à mettre sur le repère en question.
     #Pour tracer des repères verticaux (horizontaux plus tard) sur la courbe.
+
+    debug("Échelle ok. Voir s'il y a des repères supplémentaires : "+str(conf["liste_reperes"]), liste_err)
+    
     for rep in conf["liste_reperes"]:
         if rep.get("trace", "") == "oui": # SI on veut tracer
             agec = u.convertitunite(rep["donnee"], unite, liste_err)
@@ -375,14 +380,19 @@ def cree_figure(conf,l_jours,l_poids,typedonnee,liste_extracalculs, liste_err, e
         
         ax.set_yticks(echellemajeure, minor=False)
         ax.set_yticks(echellemineure, minor=True)
-    
         # échelle en temps
-        pas=u.choix_echelle_temps(unite, age_maxi)
+        
+        # Le jour minimum n'est pas forcément zéro !
+        age_mini = min(l_jours[0], 0)
+        
+        pas=u.choix_echelle_temps(unite, age_maxi - age_mini)
         debug("pas choisis pour l'échelle en x : "+str(pas), liste_err)    
+        
+
     
-        echellemajeure = arange(0,age_maxi, pas[0])
+        echellemajeure = arange(age_mini,age_maxi, pas[0])
         if pas[1] >0:
-            echellemineure = arange(0,age_maxi, pas[1])
+            echellemineure = arange(age_mini,age_maxi, pas[1])
         else:
             echellemineure = []
         ax.set_xticks(echellemajeure, minor=False)