Инвертировать изображение, отображаемое imshow в matplotlib


88

Я хотел, чтобы imshow()функция matplotlib.pyplotотображала изображения в обратном порядке, то есть в перевернутом виде. Есть простой способ сделать это?

Ответы:


165

Укажите аргумент ключевого слова origin='lower'или origin='upper'в своем вызове imshow.


почему значение по умолчанию отличается на разных машинах? Есть ли способ установить значение по умолчанию? Тем не менее, спасибо за этот ответ, в прошлом я пытался исправить это с помощью переворота матрицы и прочего. Это намного проще!
Milla Well

вероятно, из-за разных версий pyplot (они изменили соглашение где-то с 0,0 в верхнем левом углу на нижний левый)
wim

1
Что, если вы захотите повернуть его по часовой стрелке.
Рахми Прюитт


-10

добавьте .T после данных, которые вы хотите построить

plt.imshow(data.T)

Это "транспонирует" данные


Это предполагает, что отображаемые данные представляют собой массив Numpy, а не список или другую структуру. В частности, звонок .Tозначает звонокnumpy.ndarray.T
RegularlyScheduledProgramming

14
Транспонирование - это диагональный переворот. Пользователи хотели вертикальный переворот.
wim
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.