Como reverter eixos em Matplotlib
-
Métodos
invert_xaxis()
einvert_yaxis()
-
matplotlib.pyplot.axis()
Método -
Métodos
xlim()
eylim()
para objetospyplot
Podemos reverter os eixos X e Y em Matplotlib utilizando os métodos invert_xaxis()
e invert_yaxis()
para objetos de axes
respectivamente. Também podemos utilizar os métodos axis()
, xlim()
, e ilim()
para o objeto pyplot
para definir valores mínimos e máximos, através dos quais podemos reverter os eixos.
Métodos invert_xaxis()
e invert_yaxis()
Para reverter o eixo X, utilizamos matplotlib.axes.Axes.invert_xis
e para inverter o eixo Y, utilizamos matplotlib.axes.Axes.invert_yaxis
. Podemos reverter qualquer um dos eixos ou ambos os eixos utilizando os métodos acima.
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()
Resultado:
Na saída, a figura à esquerda é a trama de x
e y
com eixos normais enquanto a figura à direita tem seus dois eixos revertidos.
Se desejarmos reverter apenas um dos eixos, podemos utilizar invert_xis()
para inverter apenas o eixo X e invert_yaxis()
para reverter apenas o eixo Y.
matplotlib.pyplot.axis()
Método
matplotlib.pyplot.axis
é utilizado para definir o mínimo e o máximo dos eixos X e Y.
Sintaxe da definição dos valores mínimo e máximo dos eixos X e Y:
matplotlib.pyplot.axis([xmin, xmax, ymin, ymax])
Se trocarmos a posição de xmin
e xmax
na função acima, o eixo X é invertido. Da mesma forma para inverter os eixos Y, mudamos a posição de ymin
e ymax
na função acima.
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()
Resultado:
As funções min
e max
retornam os valores mínimo e máximo na array, respectivamente.
Métodos xlim()
e ylim()
para objetos pyplot
matplotlib.pyplot.xlim()
e matplotlib.pyplot.ylim()
podem ser utilizados para definir ou obter limites para os eixos X e Y, respectivamente. Se passarmos o valor máximo no eixo como limite inferior e o valor mínimo no eixo como limite superior nas funções acima, obtemos um eixo 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()
Resultado: