Inverser l'image affichée par imshow dans matplotlib


88

Je voulais que la imshow()fonction matplotlib.pyplotaffiche les images dans le sens inverse, c'est à dire à l'envers. Existe-t-il un moyen simple de procéder?

Réponses:


165

Spécifiez l'argument mot-clé origin='lower'ou origin='upper'dans votre appel à imshow.


pourquoi la valeur par défaut diffère-t-elle sur différentes machines? Existe-t-il un moyen de définir la valeur par défaut? Merci pour cette réponse néanmoins, dans le passé, j'ai essayé de résoudre ce problème en utilisant des retournements de matrice et d'autres choses. C'est beaucoup plus facile!
Milla Well

probablement à cause de différentes versions de pyplot (ils ont changé la convention quelque part de 0,0 en haut à gauche en bas à gauche)
wim

1
Et si vous souhaitez le déplacer dans le sens des aiguilles d'une montre.
Rahmi Pruitt


-10

ajoutez .T après les données que vous souhaitez tracer

plt.imshow(data.T)

Cela "transposera" les données


Cela suppose que les données affichées sont un tableau Numpy et non une liste ou une autre structure. Plus précisément, appeler .Tsignifie appelernumpy.ndarray.T
RegularlyScheduledProgramming

14
La transposition est un retournement en diagonale. Les utilisateurs voulaient un retournement vertical.
wim
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.