Визуализируйте матрицу с разными значениями в виде цветов в python - PullRequest
0 голосов
/ 08 марта 2020

Я просто хотел бы напечатать матрицу с тремя разными значениями (например, 0,1 и 2) в виде разных цветов. Представьте, что у меня есть следующая сетка

import numpy as np
grid=np.zeros((5, 5))
grid[1][1]=2
grid[3][8]=2
grid[3][4]=1
grid[6][7]=1
grid[7][7]=1

Как я могу визуализировать ее так, как у меня есть доска, и я выделяю цветом те позиции, где у меня есть значение «1», а другим цветом - позицию где у меня есть значение "2".

Я пытался с

import matplotlib.pyplot as plt
ax=plt.subplots
ax.imshow(grid)

Но я получаю ошибку "У объекта" tuple "нет атрибута" imshow ""

Спасибо заранее за вашу помощь!

Ответы [ 2 ]

0 голосов
/ 08 марта 2020

Это сработало для меня:

grid=np.zeros((9, 9))
grid[1][1]=2
grid[3][8]=2
grid[3][4]=1
grid[6][7]=1
grid[7][7]=1

plt.imshow(grid)

enter image description here

Обратите внимание, что вы пытались установить элемент вне определенного вами массива в вашем примере. Поэтому я расширил определение до размера (9,9)

0 голосов
/ 08 марта 2020

Попробуйте это:

import matplotlib.pyplot as plt
_, ax = plt.subplots(1)
ax.imshow(grid)
...