Invertieren Sie das von imshow in matplotlib angezeigte Bild


88

Ich wollte, dass die imshow()Funktion matplotlib.pyplotBilder in umgekehrter Richtung anzeigt, dh verkehrt herum. Gibt es eine einfache Möglichkeit, dies zu tun?

Antworten:


163

Geben Sie das Schlüsselwortargument origin='lower'oder origin='upper'in Ihrem Aufruf an an imshow.


Warum unterscheidet sich die Standardeinstellung auf verschiedenen Computern? Gibt es eine Möglichkeit, die Standardeinstellung festzulegen? Trotzdem danke ich Ihnen für diese Antwort. In der Vergangenheit habe ich versucht, dies mithilfe von Matrixflips und anderen Dingen zu beheben. Das ist viel einfacher!
Milla Well

wahrscheinlich wegen verschiedener Versionen von Pyplot (sie haben die Konvention irgendwo von 0,0 geändert, indem sie oben links nach unten links sind)
wim

1
Was ist, wenn Sie es im Uhrzeigersinn bewegen möchten?
Rahmi Pruitt


-9

Fügen Sie nach den Daten, die Sie zeichnen möchten, .T hinzu

plt.imshow(data.T)

Dadurch werden die Daten "transponiert"


Dies setzt voraus, dass die angezeigten Daten ein Numpy-Array und keine Liste oder andere Struktur sind. Speziell durch Aufrufen .Tbedeutet Aufrufennumpy.ndarray.T
RegularlyScheduledProgramming

13
Transponieren ist ein diagonaler Flip. Benutzer wollten einen vertikalen Flip.
wim
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.