Tracer des lignes multiples en Python Matplotlib

Suraj Joshi 18 juillet 2021
  1. Tracer une seule ligne en Python Matplotlib
  2. Tracer des lignes multiples en Python Matplotlib
Tracer des lignes multiples en Python Matplotlib

Ce tutoriel explique comment nous pouvons tracer plusieurs lignes en utilisant Matplotlib et définir une couleur différente pour chaque ligne de la figure.

Tracer une seule ligne en Python Matplotlib

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(8)
y = 4 * x - 10

plt.plot(x, y)
plt.title("Plot line in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.show()

Production :

Tracer une seule parcelle Matplotlib

Il crée un tracé de la ligne en utilisant la fonction matplotlib.pyplot.plot(). Nous passons les coordonnées X et Y de la ligne comme arguments à la fonction plot().

Tracer des lignes multiples en Python Matplotlib

Pour tracer plusieurs lignes dans Matplotlib, nous continuons à appeler la fonction matplotlib.pyplot.plot() pour chaque ligne et nous passons les coordonnées de la ligne comme argument à la fonction plot() respective.

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(8)
y1 = 4 * x + 5
y2 = 3 * x + 5
y3 = 2 * x + 5
y4 = x + 5

plt.plot(x, y1)
plt.plot(x, y2)
plt.plot(x, y3)
plt.plot(x, y4)

plt.title("Plot Multiple lines in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.show()

Production :

Tracer plusieurs lignes dans Matplotlib

Il trace quatre lignes différentes avec des axes communs, chacune avec une couleur différente. Nous appelons la fonction matplotlib.pyplot.plot() 4 fois pour tracer les 4 lignes différentes. Chaque fois, nous passons les coordonnées des différentes lignes comme arguments à la fonction.

Pour rendre le tracé plus descriptif, nous pouvons ajouter la légende au tracé afin de déduire quelle ligne est représentée par quelle couleur.

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(8)
y1 = 4 * x + 5
y2 = 3 * x + 5
y3 = 2 * x + 5
y4 = x + 5

plt.plot(x, y1, label="4x+5")
plt.plot(x, y2, label="3x+5")
plt.plot(x, y3, label="2x+5")
plt.plot(x, y4, label="x+5")

plt.title("Plot Multiple lines in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.legend()
plt.show()

Production :

Tracer plusieurs lignes dans Matplotlib avec la légende

Il trace 4 lignes dans la figure avec la légende. Pour ajouter une légende à la figure, nous définissons une étiquette pour chaque ligne lors du tracé de la ligne en définissant le paramètre label dans la fonction plot(). Enfin, nous appelons la fonction matplotlib.pyplot.legend() pour ajouter la légende de la figure.

Par défaut, Matplotlib attribuera automatiquement la couleur à la ligne. Si nous voulons contrôler les couleurs pour chaque ligne, nous utilisons la méthode matplotlib.axes.Axes.set_prop_cycle().

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(8)
y1 = 4 * x + 5
y2 = 3 * x + 5
y3 = 2 * x + 5
y4 = x + 5

colors = ["orange", "purple", "green", "red"]

plt.gca().set_prop_cycle(color=colors)
plt.plot(x, y1, label="4x+5")
plt.plot(x, y2, label="3x+5")
plt.plot(x, y3, label="2x+5")
plt.plot(x, y4, label="x+5")

plt.title("Plot Multiple lines in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.legend()
plt.show()

Production :

Contrôle des couleurs dans le tracé avec plusieurs lignes dans Matplotlib avec légende

Il fixe l’orange pour la première ligne, le purple pour la deuxième ligne, le green pour la troisième ligne et le red pour la quatrième ligne. Nous passons la liste des couleurs à utiliser dans l’ordre comme argument à la méthode matplotlib.axes.Axes.set_prop_cycle().

Auteur: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Article connexe - Matplotlib Line