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?

pratikm
quelle

Antworten:

163

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

wim
quelle
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
@RahmiPruitt Siehe Matplotlib Bilddatei um X Grad drehen
wim
-9

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

plt.imshow(data.T)

Dadurch werden die Daten "transponiert"

Ben Pickering
quelle
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