extrapolation des courbes et calculs associés
[perso/Denise/oms.git] / configuration.py
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3
4 ### Toutes les "constantes" de config importés pour ce qui concerne les courbes
5 CONFIG = {}
6
7 # les unités acceptées
8 CONFIG["liste_unites"] = ["jours", "semaines", "mois", "années"]
9 CONFIG["liste_typedonnees"] = ["poids","taille"]
10 CONFIG["unites_typedonnees"] = {"poids": "kg", "taille":"cm"}
11 # à combien on arrondit par défaut les dnnées
12 CONFIG["arrondis_typedonnees"] = {"poids": 0.01, "taille": 1}
13
14 # Liste des calculs additionnels
15 CONFIG["extradata"] = ["calculextradata", "calculextratemps"]
16
17 # fichiers
18
19 CONFIG["chemin_oms"] = "data_OMS/"
20 CONFIG["fichiersOMS"] = {}
21
22 CONFIG["fichiersOMS"]["poids"] = {
23 "perc_garcon": "wfa_boys_p_exp.txt",
24 "perc_fille": "wfa_girls_p_exp.txt",
25 "z_garcon": "wfa_boys_z_exp.txt",
26 "z_fille": "wfa_girls_z_exp.txt",
27 "perc_mixte": "wfa_mix_p_exp.txt",
28 "z_mixte": "wfa_mix_z_exp.txt",
29 }
30 CONFIG["fichiersOMS"]["taille"] = {
31 "perc_garcon": "lhfa_boys_p_exp.txt",
32 "perc_fille": "lhfa_girls_p_exp.txt",
33 "z_garcon": "lhfa_boys_z_exp.txt",
34 "z_fille": "lhfa_girls_z_exp.txt",
35 "perc_mixte": "lhfa_mix_p_exp.txt",
36 "z_mixte": "lhfa_mix_z_exp.txt",
37 }
38
39
40 # ajouter le chemin
41 for typed in CONFIG["liste_typedonnees"]:
42
43 for (cle,val) in CONFIG["fichiersOMS"][typed].items():
44 CONFIG["fichiersOMS"][typed][cle] = CONFIG["chemin_oms"]+val
45
46 # Pour les courbes percentiles
47 CONFIG["liste_data_choisie_p"] = [(5,1),(7,5),(8,10),(10,25),(11,50),(12,75), (14,90),
48 (15,95),(17,99)]
49 CONFIG["liste_data_choisie_p"].sort(reverse = True)
50
51 # pour le sigma : (colonne,sigma)
52 CONFIG["liste_data_choisie_z"] = [(2,-3),(3,-2),(4,-1),(5,0),(6,1),(7,2),(8,3)]
53 CONFIG["liste_data_choisie_z"].sort(reverse=True)
54
55 # config, côté python
56
57 # nombre de jours dans les autres unités
58 CONFIG["jours_dans_mois"] = 30.4375
59 CONFIG["jours_dans_annee"] = 365.25
60 CONFIG["jours_dans_semaine"] = 7
61
62
63 ## Maxi et mini de "sécurité"
64 # jours maxi et mini
65 CONFIG["jours_maxi_courbe"] = round(5.5*CONFIG["jours_dans_annee"])
66 CONFIG["jours_mini_courbe"] = 10
67 CONFIG["jours_defaut_donneesvides"]= round(6.4*CONFIG["jours_dans_mois"]) # si données vides, 6 mois et quelque
68 # poids max (protection)
69 CONFIG["poids_maxi"] = 80
70 CONFIG["taille_maxi"] = 150
71 # taille max du nom
72 CONFIG["longueur_max_nom_bebe"] = 100
73
74 #largeurs et hauteurs min et max
75
76 CONFIG["largeur_graphique_max"] = 30
77 CONFIG["largeur_graphique_min"] = 3
78
79 CONFIG["hauteur_graphique_max"] = 30
80 CONFIG["hauteur_graphique_min"] = 2
81
82 CONFIG["couleurs"] = {
83 "courbe1" : (0,0,1),
84 "courbe2" : (0,1,0),
85 "courbe3" : (1,0,0),
86 "fond": (1,1,1),
87 "cadretxt": (0,0,0),
88 "grille": (0.5,0.5,0.5)
89 }
90
91
92 ## Configuration "par défaut" du graphique, tel qu'exporté/importé
93 DEFAUT = {}
94
95 ### Taille du graphique par défaut (pouces, en 80 points par pouce)
96 DEFAUT["largeur"] = 10
97 DEFAUT["hauteur"] = 7
98
99 # Nombre de lignes par défaut dans le formulaire
100 DEFAUT["nb_data"] = 6
101
102 # couleurs par défaut
103 DEFAUT["couleurs"] = {}
104 DEFAUT["couleurs"]["courbe1"] = "#0000FF" # bleu
105 DEFAUT["couleurs"]["courbe2"] = "#00FF00" # vert
106 DEFAUT["couleurs"]["courbe3"] = "#FF0000" # rouge
107 DEFAUT["couleurs"]["fond"]= "#FFFFFF" # blanc
108 DEFAUT["couleurs"]["cadretxt"] = "#000000" # noir
109 DEFAUT["couleurs"]["grille"] = "#7f7f7f" # gris
110
111 # Remplissage du formulaire, autres
112 DEFAUT["age_0"]= "0j"
113 DEFAUT["legende"] = "oui"
114 DEFAUT["typecourbe"] = "P"
115 DEFAUT["unite"] = ""
116 DEFAUT["tracevide"] = ""
117 DEFAUT["memechelle"] = ""
118 DEFAUT["positionlegende"] = "hg"
119 DEFAUT["prolongercourbes"] = ""
120 DEFAUT["grilleamelio"] = "oui"
121
122
123 DEFAUT["prematurite"] = "0j"
124 DEFAUT["agecorrige"] = "oui"
125
126 # initialiser la config
127 def config_init():
128 c = DEFAUT.copy()
129 c["non_sauve"] = {}
130 return c
131
132