1. À propos du module matplotlib
Matplotlib est une bibliothèque de traçage des courbes, des surfaces associé au langage Python et son extension mathématique numérique NumPy. Il fournit une API orientée objet pour incorporer des tracés dans des applications à l'aide de boîtes à outils GUI générales comme Tkinter, wxPython, PyQt ou GTK.
Le module matplotlib est un module large et très complet. Nous allons voir ici quelques exemples d'utilisation comme par exemple le tracé de représentations graphiques de fonctions ou de séries statistiques. Vous trouverez plus d'informations sur la documentation officielle matplotlib.
2. Importation du module matplotlib & pyplot.
Comme tous les modules, il doit être chargé et plus précisément c'est un sous-module qui nous intéressera: pyplot. Pour cela, nous ne chargerons pas toutes les fonctions comme d'habitude mais l'importons sous un nom plus court à utiliser. Nous utiliserons donc import matplotlib.pyplot comme plt. Cela signifie que pour utiliser une fonction de ce module comme show () par exemple, nous devrons écrire plt.show () (puisque nous avons importé le module sous le nom plt). De plus, le module matplotlib est très lié à un autre module qui sert à faire du calcul numérique qui s'appelle numpy et qui est souvent importé sous le nom np. En résumé, si vous voulez représenter graphiquement des fonctions ou autres, vous devrez mettre dans l'en-tête:
3 - Méthodes de bases
3.1 plt.show():
Le module matplotlib utilise un certain nombre de fonctions pour préparer le graphique mais si vous ne demandez pas de l'afficher, rien ne se passera. Il est donc nécessaire d'utiliser une méthode nommée plt.plot() pour visualiser le graphique.
Syntaxe de la méthode plt.plot()
- liste_x est une liste de nombres [x_1, x_2, ..., x_n]
- liste_y est une liste de nombres [y_1, y_2, ..., y_n] avec le même nombre de éléments.
- Ensuite plt.plot (liste_x, liste_y) placera les points de coordonnées (x_1, y_1), (x_2, y_2), ..., (x_n, y_n) et les reliera pas à pas par un segment. Voici un exemple où nous connectons les points (1, 3), (4, 2) et (5, 7):
Exemple en utilisant la méthode plot ()
Vous pouvez modifier les listes de points dans le programme ci-dessus pour voir le résultat.
L'idée de dessiner une fonction sera donc de placer beaucoup de points sur la courbe que l'on veut représenter suffisamment près pour ne pas voir qu'ils sont reliés par une droite.
3.2 np.linspace (début, fin, N)
C'est là qu'intervient le module numpy. Pour tracer correctement une fonction, nous aurons besoin de beaucoup de points qu'il est hors de question de saisir à la main comme dans l'exemple précédent. La fonction np.linspace (début, fin, nombre) vous permet de créer une liste de N nombres qui commencent à la valeur de début et s'arrêtent à la valeur de fin et sont répartis uniformément.
Par exemple, dessinons la fonction définie par y = sin (x) entre -5 et 5 en utilisant 100 points:
3.3 - plt.axis (x_min, x_max, y_min, y_max):
Cette fonction vous permet de modifier les axes du système de coordonnées qui seront affichés. S'il n'est pas utilisé, le choix des axes se fera automatiquement mais parfois ce choix n'est pas pertinent et il devra donc être modifié avec cette fonction. Les deux premières valeurs données sont les valeurs minimale et maximale pour l'axe des x et les deux suivantes sont celles pour l'axe des y.
3.4 - plt.grid():
Affiche une grille supplémentaire sur notre système de coordonnées.
4. Tracer des fonctions plus complexes
Supposons que nous voulons dessiner des fonctions impliquant autre chose que les opérations +, -, * telles que logarithme, exponentielle, cosinus, sinus ... Dans ce cas, nous ne pouvons pas faire exactement comme dans l'exemple précédent.
4.1 Première méthode
Une première façon de le faire est de créer manuellement la liste des y correspondant au x, c'est-à-dire de créer une liste composée des f (x) pour x dans la liste des abscisses.
Par exemple, si nous voulons tracer la fonction y = 2 * sin (x) + x entre 0 et 7, nous pourrions le faire:
4.2 Deuxième méthode
Une deuxième méthode consiste à utiliser les fonctions classiques modifiées contenues dans numpy en utilisant la syntaxe np.function ():
5. Dessin de graphiques sous forme d'histogrammes
Les graphiques à barres et les histogrammes peuvent être facilement retracés à partir de données telles que des séries statistiques.
Exemple de graphique en histogrammes
6. Affichage d'un nuage de points
Pour dessiner des points, utilisez simplement la fonction plt.scatter (abscisses, ordonnées) où abscisses est la liste des abscisses des points que nous voulons tracer et ordonne la liste des ordonnées.
Par exemple, si vous souhaitez placer les points (1,3), (2,2.7), (3,3.5), (4,3), (5,3) et (6,4):
Younes Derfoufi
CRMEF OUJDA
merci pour votre aide 👿 👿