Comment créer des tracés Matplotlib avec des échelles logarithmiques
Souvent, vous souhaiterez peut-être créer des tracés Matplotlib avec des échelles logarithmiques pour un ou plusieurs axes. Heureusement, Matplotlib propose pour ce faire les trois fonctions suivantes :
- Matplotlib.pyplot.semilogx() – Créez un tracé avec une mise à l’échelle logarithmique sur l’axe des x.
- Matplotlib.pyplot.semilogy() – Créez un tracé avec une mise à l’échelle logarithmique sur l’axe y.
- Matplotlib.pyplot.loglog() – Créez un tracé avec une mise à l’échelle logarithmique sur les deux axes.
Ce tutoriel explique comment utiliser chacune de ces fonctions en pratique.
Exemple 1 : Échelle logarithmique pour l’axe X
Supposons que nous créions un graphique linéaire pour les données suivantes :
import matplotlib.pyplot as plt #create data x = [1, 8, 190, 1400, 6500] y = [1, 2, 3, 4, 5] #create line chart of data plt.plot(x,y)
Nous pouvons utiliser la fonction .semilogx() pour convertir l’axe des x en une échelle logarithmique :
plt.semilogx()
Notez que l’axe des y est exactement le même, mais l’axe des x est désormais sur une échelle logarithmique.
Exemple 2 : échelle logarithmique pour l’axe Y
Supposons que nous créions un graphique linéaire pour les données suivantes :
import matplotlib.pyplot as plt #create data x = [1, 2, 3, 4, 5] y = [1, 8, 190, 1400, 6500] #create line chart of data plt.plot(x,y)
Nous pouvons utiliser la fonction .semilogy() pour convertir l’axe y en une échelle logarithmique :
plt.semilogy()
Notez que l’axe des x est exactement le même, mais l’axe des y est désormais sur une échelle logarithmique.
Exemple 3 : Échelle logarithmique pour les deux axes
Supposons que nous créions un graphique linéaire pour les données suivantes :
import matplotlib.pyplot as plt #create data x = [10, 200, 3000, 40000, 500000] y = [30, 400, 5000, 60000, 750000] #create line chart of data plt.plot(x,y)
Nous pouvons utiliser la fonction .loglog() pour convertir l’axe y en une échelle logarithmique :
plt.loglog(x, y)
Notez que les deux axes sont désormais sur une échelle logarithmique.
Ressources additionnelles
Comment modifier la taille des polices sur un tracé Matplotlib
Comment supprimer les tiques des tracés Matplotlib