[Python] Tracé de graphes

Résolu/Fermé
Utilisateur anonyme - 5 avril 2006 à 11:26
 Utilisateur anonyme - 5 avril 2006 à 11:37
Bonjour à tous
Voici mon code :
"def Trace_Graphe(matrice, param, nb_line_param) :
root.wm_title("Test")
f = Figure(figsize=(5,4), dpi=100)
a = f.add_subplot(111)

x = matrice[param[0]]
y = matrice[param[2]]
z = matrice[param[3]]
a.semilogy(x, y, 'r', x, z, 'b')
a.legend((param[2], param[3]))
a.grid(True)
canvas = FigureCanvasTkAgg(f, master=root)
canvas.show()
canvas.get_tk_widget().pack(side=Tk.TOP, fill=Tk.BOTH, expand=1)
Tk.mainloop()
"
J'aimerais savoir comment faire pour afficher le xlabel de mon graphe.
Car si je fais "a.xlabel(toto)", il me renoie l'erreur :AttributeError: Subplot instance has no attribute 'xlabel'.
Si je mets juste xlabel("toto"), il tourne en boucle sans me redonner la main.

Et une deuxième question (purement esthétique) : est-il possible de rendre la fenêtre de légende déplaçable (car elle est parfois sur les courbes)?
Merci beaucoup

1 réponse

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 659
5 avril 2006 à 11:33
1)
a.set_xlabel('toto')
a.set_ylabel('titi')


2)

 a.legend((param[2], param[3]),loc='best')


Le loc='best' demande à matplotlib de faire le placement le plus intelligent possible de la légende.
(Mais c'est vrai que les choix ne sont pas toujours très heureux. Je n'ai pas encore trop creusé de ce côté là)
0
Utilisateur anonyme
5 avril 2006 à 11:37
Ah c'était donc set_xlabel et non xlabel.......
Merci beaucoup
0