from configuration import CONFIG
from gestionOMS import *
from gestion_unites import *
-from gestion_donnees import calcule_max_graphique
+from gestion_donnees import calcule_max_graphique, convertit_jours_vers_python
import matplotlib.pyplot as plt
print(conf)
print(conf["non_sauve"])
if conf["non_sauve"].get("maxi",0) == 0:
- print("bla")
jour_maxi = calcule_max_graphique(l_jours)
else:
jour_maxi = conf["non_sauve"]["maxi"]+1
else:
unite = conf["non_sauve"]["unite"]
+ #debug("prématurité dans la config : "+conf["prematurite"],liste_err)
+ prema = int(convertit_jours_vers_python(conf["prematurite"],liste_err))
+ ## Gestion des prémas, deux cas :
+ # Si agecorrige est oui, alors on veut juste soustraire la valeur de préma
+ # à toutes les données.
+ # Si agecorrige est non, alors on veut ajouter la valeur de préma aux courbes de référence.
+
+ 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
+# debug("liste des jours : "+str(l_jours),liste_err)
+ else:
+ debug("bla",liste_err)
l_jours_conv = convertit_tableau(l_jours,unite,liste_err)
# Attention, comme les jours commencent à partir de 0, faut enlever 1 pour avoir la borne...
age_maxi = convertitunite(jour_maxi-1,unite,liste_err)
- debug("cree_figure : conversion des unités ok",liste_err)
+ debug("cree_figure : conversion des unités ok : "+str(l_jours_conv),liste_err)
titre = "Courbe de "+typedonnee+" OMS"
else:
erreur("Type de courbe invalide"+conf["typecourbe"],liste_err)
return ""
-
- debug("cree_figure : géré le type de courbe ok. Liste des data labels : "+str(liste_data_labels),liste_err)
- debug("Fichier d'où extraire les données : "+fichier_oms,liste_err)
# Si y'a un nom on met "courbe de machin"
if conf["nom"] !="":
titre += " de " +conf["nom"]
+
+
+ if prema>0:
+ titre+= ", préma de "+conf["prematurite"]
+ if conf["agecorrige"] == "oui":
+ titre+=" (courbe en âge corrigé)"
+ else:
+ titre+=" (courbe en âge réel, données OMS décalées)"
+
+ debug("cree_figure : géré le type de courbe ok. Liste des data labels : "+str(liste_data_labels),liste_err)
+ debug("Fichier d'où extraire les données : "+fichier_oms,liste_err)
+
# convertir les unités
return ""
debug("cree_figure : on va convertir données OMS à la bonne unité",liste_err)
- try:
- coljour = convertit_tableau(extraire_colonne(t,0,jour_maxi),unite,liste_err)
+ try:
+ coljour= (extraire_colonne(t,0,jour_maxi))
+ if prema>0 and conf["agecorrige"] != "oui":
+ coljour = [j + prema for j in coljour]
+ coljour = convertit_tableau(coljour,unite,liste_err)
except:
erreur("Problème à la conversion du tableau OMS. jour_maxi = "+str(jour_maxi)+" unite = "+unite,liste_err)
return ""
debug("cree_figure : prête à créer la figure",liste_err)
- #### La figure
+ #### La figure, params
+
fig = plt.figure(num=None, figsize=(conf["largeur"], conf["hauteur"]), dpi=100, facecolor=conf["couleurs"]["fond"])
plt.rcParams['axes.facecolor'] = conf["couleurs"]["fond"]
plt.rcParams['axes.edgecolor']= conf["couleurs"]["cadretxt"]
#warning("Jusque là ça marche",liste_err)
debug("cree_figure : prête à tracer la courbe de l'enfant",liste_err)
-
+
+
+ ### Tracé pour de bon
if l_jours != []:
plt.plot(l_jours_conv,l_poids,label=conf["nom"],color=conf["couleurs"]["cadretxt"],marker='o')
+ debug("Tracé de la courbe enfant, avec les jours "+str(l_jours_conv),liste_err)
plt.xlabel("Âge en "+unite,color=conf["couleurs"]["cadretxt"])
plt.ylabel(typedonnee.capitalize()+" en "+CONFIG["unites_typedonnees"][typedonnee],color=conf["couleurs"]["cadretxt"])
plt.title(titre,color=conf["couleurs"]["cadretxt"])
- plt.axis([0,age_maxi,poids_min,poids_max])
+ plt.axis([min(0,l_jours_conv[0]),age_maxi,poids_min,poids_max])
if conf['legende']=="oui":
legende = plt.legend(loc=conf['positionlegende'])