Pour tracer un graphique nous utiliserons la bibliothèque matplotlib et plus exactement une sous-module de matplotlib qui se nomme matplolib.pyplot.
La première chose à faire est donc d'importer cette bibliothèque :
import matplotlib.pyplot as plt # importation de la bibliothèque matplotlib.pyplot sous le nom plt
Toutes les fonctions seront appelées en les faisant précéder de plt.
Exemples :
Par exemple, pour étudier la loi d'Ohm, on mesure la tension U aux bornes d'une résistance en fonction de l'intensité I du courant traversant cette résistance. On obtient les mesures suivantes :
Intensité I (mA) | 0,5 | 1,0 | 2,0 | 4,0 | 6,0 |
---|---|---|---|---|---|
Tension U (V) | 1,0 | 2,2 | 4,5 | 8,8 | 13,2 |
On souhaite tracer la caractéristique U = f(I).
1) On crée deux listes, une pour les intensités en abscisse et une pour les tensions en ordonnée.
U = [1.0, 2.2, 4.5, 8.8, 13.2] I = [0.5, 1.0, 2.0, 4.0, 6.0 ]
2) On crée les axes du graphique avec la fonction plt.axis() dont la syntaxe est : plt.axis([Xmin, Xmax, Ymin, Ymax])
plt.axis([0,8,0,15] # de 0 à 8 en abscisse et de 0 à 15 en ordonnée)
3) Pour tracer le graphique, on utilise la fonction plt.plot() dans laquelle on indique les deux listes contenant les mesures et un paramètre pour définir la couleur et la forme du point du tracé :
plt.plot(U, I, 'r+')
Le r de r+ signifie que l'on souhaite des points rouges (red). D'autres couleurs sont disponibles : b (bleu), g (green), c (cyan), y (yellow), k (black), w (white).
Le + de r+ indique que l'on souhaite des points sous forme de plus (+). D'autres formes sont possibles :
On peut combiner les points et les courbes : 'r+- -' affiche des points rouges avec la forme d'un plus (+), la courbe est tracée en pointillés.
4) Le graphique est affiché à l'écran avec la fonction plt.show().
Le code complet et le graphique obtenu :
import matplotlib.pyplot as plt U = [1.0, 2.2, 4.5, 8.8, 13.2] I = [0.5, 1.0, 2.0, 4.0, 6.0 ] plt.axis([0,8,0,15]) plt.plot(I, U, 'r+-') plt.show()
Pour nommer les axes, insérer au code précédent les lignes ci-dessous avant la fonction plt.show() :
plt.xlabel("Intensité") plt.ylabel("Tension")
Pour ajouter un titre, insérer au code précédent la ligne ci-dessous avant la fonction plt.show() :
plt.title("U = f(I)")
Pour augmenter la taille des caractères du titre, il faut ajouter “.set_fontsize(taille)”:
plt.title("U = f(I)").set_fontsize(16)
Pour mettre du texte sur le graphique il faut utiliser la fonction : plt.text(x, y, texte, couleur).
plt.text(5, 10, "U = 2200 x I", color = 'r').set_fontsize(16)
⇒ .set_fontsize(16) permet d'augmenter la taille des caractères à 16 pixels (facultatif).
Il est possible d'ajouter une grille de fond au graphique en utilisant la fonction grid() :
plt.grid()
Cette fonction accepte des paramètres pour la couleur (color), le style de trait (linestyle) ou l'épaisseur du tracé (linewidth) :
plt.grid(color='r', linestyle='-', linewidth=2)
Pour afficher uniquement des lignes horizontales :
plt.grid(axis='y')