Forum EduPython

Echanges autour d'EduPython.

Vous n'êtes pas identifié(e).

#1 2021-07-24 21:00:09

Doctojones
Membre
Inscription : 2021-07-24
Messages : 7

Affichage de graphiques

Bonjour,

Je suis nouveau sur le forum. Je ne sais pas s'il faut se présenter quelque part avant de poster sa première question, sinon... ben désolé. Je suis enseignant et je débute en Python.
Ma question :
Je désire pouvoir afficher deux courbes dans la fenêtre qu'ouvre la bibliothèque matplotlib.pyplot de manière à pouvoir comparer les résultats. Les grandeurs sur les axes sont différentes, il n'est donc pas possible ici de mettre ces deux courbes sur le même graphe.
Merci pour vos réponses éventuelles, cordialement.

Dernière modification par Doctojones (2021-07-24 21:00:51)

Hors ligne

#2 2021-07-25 09:01:48

magicvinni
Administrateur
Inscription : 2017-12-22
Messages : 308

Re : Affichage de graphiques

Bonjour,

     Il suffit de faire le show une fois que tous les plot sont faits, par exemple :

from math import sin, cos, pi
from matplotlib import pyplot as plt

x = -pi
X, Y1, Y2 = [], [], []
while x < pi :
    X.append(x)
    Y1.append(sin(x))
    Y2.append(cos(x))
    x = x + 0.1
plt.plot(X,Y1, 'r-')
plt.plot(X,Y2, 'b--')
plt.show()

Vincent

Hors ligne

#3 2021-07-25 19:01:54

Doctojones
Membre
Inscription : 2021-07-24
Messages : 7

Re : Affichage de graphiques

Bonjour Vincent,

Merci pour ta réponse. Le problème, c'est que je souhaiterais avoir deux graphiques l'un à côté de l'autre. Les deux courbes que je cherche à faire exploiter ne peuvent pas être dans le même repère car leurs dimensions sont différentes. Pourtant, elles doivent être vues l'une à côté de l'autre pour faire apparaître l'influence de l'une sur l'autre.
Cordialement,

Hors ligne

#4 2021-07-26 11:29:34

magicvinni
Administrateur
Inscription : 2017-12-22
Messages : 308

Re : Affichage de graphiques

On peut utiliser subplot pour avoir 2 repères dans une fenêtre :

from math import sin, cos, pi
from matplotlib import pyplot as plt

x = -pi
X, Y1, Y2 = [], [], []
while x < pi :
    X.append(x)
    Y1.append(sin(x))
    Y2.append(cos(x))
    x = x + 0.1
plt.subplot(2,1,1)
plt.plot(X,Y1, 'r-')
plt.subplot(2,1,2)
plt.plot(X,Y2, 'b--')
plt.show()

Plus d'info dans la documentation à la page 50.

Bonne journée,
Vincent

Hors ligne

#5 2021-09-12 16:35:51

Doctojones
Membre
Inscription : 2021-07-24
Messages : 7

Re : Affichage de graphiques

Merci beaucoup !

Hors ligne

Pied de page des forums