Invertire gli assi in Matplotlib

Suraj Joshi 16 febbraio 2024
  1. Metodi invert_xaxis() e invert_yaxis()
  2. Metodo matplotlib.pyplot.axis()
  3. Metodi xlim() e ylim() per gli oggetti pyplot
Invertire gli assi in Matplotlib

Possiamo invertire l’asse X e l’asse Y in Matplotlib usando i metodi invert_xaxis() e invert_yaxis() rispettivamente per gli oggetti assi. Possiamo anche usare i metodi axis(), xlim() e ylim() per l’oggetto pyplot per impostare i valori minimi e massimi, attraverso i quali possiamo invertire gli assi.

Metodi invert_xaxis() e invert_yaxis()

Per invertire l’asse X, usiamo matplotlib.axes.Axes.invert_xaxis e per invertire l’asse Y usiamo matplotlib.axes.Axes.invert_yaxis. Possiamo ripristinare uno qualsiasi degli assi o entrambi gli assi usando i metodi sopra.

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-3, 3, 100)
y = 3 * x + 4

fig, (ax1, ax2) = plt.subplots(1, 2)

ax1.plot(x, y)
ax1.set_title("Normal Plot")

ax2.plot(x, y)
ax2.set_title("Reverted axes")
ax2.invert_xaxis()
ax2.invert_yaxis()

fig.tight_layout()
plt.show()

Produzione:

Ripristina gli assi utilizzando il metodo Inverti assi

Nell’output, la figura a sinistra è il grafico di x e y con assi normali mentre la figura a destra ha entrambi gli assi invertiti.

Se vogliamo invertire solo uno degli assi, possiamo usare invert_xaxis() per invertire solo l’asse X e invert_yaxis() per invertire solo l’asse Y.

Metodo matplotlib.pyplot.axis()

matplotlib.pyplot.axis viene utilizzato per impostare il minimo e il massimo degli assi X e Y.

Sintassi per impostare i valori minimo e massimo degli assi X e Y.

matplotlib.pyplot.axis([xmin, xmax, ymin, ymax])

Se scambiamo la posizione di xmin e xmax nella funzione precedente, l’asse X viene invertito. Allo stesso modo per invertire l’asse Y, cambiamo la posizione di ymin e ymax nella funzione precedente.

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-3, 3, 100)
y = 3 * x + 4

plt.plot(x, y)
plt.title("Reverted axes")
plt.axis([max(x), min(x), max(y), min(y)])

plt.show()

Produzione:

Ripristina gli assi utilizzando il metodo degli assi

Le funzioni min e max restituiscono rispettivamente i valori minimo e massimo nell’array.

Metodi xlim() e ylim() per gli oggetti pyplot

matplotlib.pyplot.xlim() e matplotlib.pyplot.ylim() possono essere usati per impostare o ottenere i limiti rispettivamente per l’asse X e l’asse Y. Se passiamo il valore massimo nell’asse come limite inferiore e il valore minimo nell’asse come limite superiore nelle funzioni precedenti, otteniamo un asse invertito.

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-3, 3, 100)
y = 3 * x + 4

plt.plot(x, y)
plt.title("Reverted axes")
plt.xlim(max(x), min(x))
plt.ylim(max(y), min(y))

plt.show()

Produzione:

Ripristina gli assi utilizzando il metodo limite

Autore: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

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

LinkedIn

Articolo correlato - Matplotlib Axes