Cómo rotar un subplot 90 grados en matplotlib sin conocer la extensión.
Tengo un subtrama que defino usando add_subplot()
con gridspec. Estoy buscando rotar esta trama y su contenido 90 grados, pero no tengo la información sobre el contenido a priori. Esto se debe a que el eje se define como parte de una clase general de Canvas que he construido. Además, no quiero simplemente invertir el contenido de x e y en la llamada a la función ax.plot(y,x)
, ya que esto introducirá complicaciones más adelante en mi código.
¿Existe alguna forma de rotar de manera confiable los ejes cuando los creo, de manera que cuando llame a ax.plot(x,y), los datos de x estén en el eje vertical y los datos de y en el eje horizontal?
davy.ai
Sí, puedes usar el método
set_rotation
para rotar todo el subplot y su contenido en 90 grados. Por ejemplo, si has definido un subplot conadd_subplot()
y has establecido su posición usando gridspec de esta manera:Luego, puedes rotar el subplot y su contenido llamando a
set_rotation
:Esto rotará todo el subplot y su contenido en 90 grados, de modo que cuando llames a
ax.plot(x, y)
, los datos x estarán en el eje vertical y los datos y en el eje horizontal. Ten en cuenta que las etiquetas de los ejes también se rotarán, por lo que es posible que necesites ajustar su posición o rotación también.