Cómo invertir los ejes en Matplotlib

Suraj Joshi 16 febrero 2024
  1. Métodos invert_xaxis() y invert_yaxis()
  2. Método matplotlib.pyplot.axis()
  3. Métodos xlim() y ylim() para objetos pyplot
Cómo invertir los ejes en Matplotlib

Podemos revertir el eje X y el eje Y en Matplotlib usando los métodos invert_xaxis() e invert_yaxis() para los objetos axes respectivamente. También podemos usar los métodos axis(), xlim() e ylim() para que el objeto pyplot establezca valores mínimos y máximos, a través de los cuales podemos revertir los ejes.

Métodos invert_xaxis() y invert_yaxis()

Para revertir el eje X, utilizamos matplotlib.axes.Axes.invert_xaxis e invertimos Y -axis que utilizamos matplotlib.axes.Axes.invert_yaxis. Podemos revertir cualquiera de los ejes o ambos ejes utilizando los métodos anteriores.

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()

Producción:

Revertir ejes usando el método de invertir ejes

En la salida, la figura de la izquierda es la gráfica de x e y con ejes normales, mientras que la figura de la derecha tiene ambos ejes invertidos.

Si deseamos revertir solo uno de los ejes, podemos usar invert_xaxis() para invertir solo el eje X y invert_yaxis() para revertir solo el eje Y.

Método matplotlib.pyplot.axis()

El matplotlib.pyplot.axis se utiliza para establecer el mínimo y el máximo de los ejes X e Y.

Sintaxis de establecer los valores mínimo y máximo de los ejes X e Y:

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

Si intercambiamos la posición de xmin y xmax en la función anterior, el eje X se invierte. De manera similar, para invertir el eje Y, cambiamos la posición de ymin y ymax en la función anterior.

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()

Producción:

Revertir ejes usando el método de eje

Las funciones min y max devuelven los valores mínimo y máximo en el array respectivamente.

Métodos xlim() y ylim() para objetos pyplot

matplotlib.pyplot.xlim() y matplotlib.pyplot.ylim() se puede usar para establecer u obtener límites para el eje X y el eje Y, respectivamente. Si pasamos el valor máximo en el eje como el límite inferior y el valor mínimo en el eje como el límite superior en las funciones anteriores, obtenemos un eje revertido.

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()

Producción:

Revertir ejes usando el método de límite

Suraj Joshi avatar Suraj Joshi avatar

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

LinkedIn

Artículo relacionado - Matplotlib Axes