Как пометить ячейки в matplotlib.pyplot.imshow (рисование границ ячейки) - PullRequest
0 голосов
/ 18 июня 2019

У меня есть маленький 2-мерный вектор для отображения:

import matplotlib.pyplot as plt
import numpy as np

img = np.random.rand(4,10)
plt.imshow(img, cmap='Reds')

Как показано ниже:

enter image description here

Но теперь я хочуотметить определенную ячейку, чтобы сфокусировать читателя на этой ячейке.Потому что это представляет особый интерес ...

Поэтому было бы неплохо что-то вроде границы этой ячейки:

enter image description here

Кто-тознаете, как архивировать это с помощью matplotlib удобным способом?

1 Ответ

2 голосов
/ 18 июня 2019

Поместите прямоугольник в положение пикселя, который вы хотите выделить.

import matplotlib.pyplot as plt
import numpy as np

def highlight_cell(x,y, ax=None, **kwargs):
    rect = plt.Rectangle((x-.5, y-.5), 1,1, fill=False, **kwargs)
    ax = ax or plt.gca()
    ax.add_patch(rect)
    return rect

img = np.random.rand(4,10)
plt.imshow(img, cmap='Reds')

highlight_cell(2,1, color="limegreen", linewidth=3)

plt.show()

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...