Python - цветовой график, который занимает средние углы сетки? - PullRequest
0 голосов
/ 29 октября 2018

У меня небольшая проблема с поиском метода построения. У меня есть показанная ниже сетка со значениями (1 и 0):

image

Когда я строю график с помощью pcolormesh или imshow из библиотеки matplotlib.pyplot, я получаю этот график:

image

Что имеет смысл, но не то, что я хочу. Я хочу взять углы ячейки сетки и найти среднее значение, чтобы заполнить эту ячейку. Он должен выглядеть так:

image

Я могу выполнить вычисления среднего вручную, но мне было интересно, знает ли кто-нибудь о существующем способе построения графиков, который делает это, или он доступен в качестве опции в pcolormesh?

Заранее спасибо!

1 Ответ

0 голосов
/ 29 октября 2018

Чтобы получить среднее значение сетки, вам нужно рассчитать это среднее. В простейшем случае

import numpy as np
import matplotlib.pyplot as plt

a = np.array([[1,1,1],
              [1,0,0],
              [1,0,0]])

plt.pcolormesh( (a[:-1, :-1] + a[1:, :-1] + a[:-1, 1:] + a[1:, 1:])/4. )

plt.show()

enter image description here

...