У меня есть двумерный массив numpy с 1.0e6 в качестве значения без данных. Я хотел бы создать гистограмму данных, и хотя мне это удалось, это не лучший способ сделать это.
from matplotlib import pyplot
import sys
eps = sys.float_info.epsilon
no_data = 1.0e6
e_data = elevation.reshape(elevation.size)
e_data_clean = [ ]
for i in xrange(len(e_data)):
val = e_data[i]
# floating point equality check for val aprox not equal no_data
if val > no_data + eps and val < no_data - eps:
e_data_clean.append(val)
pyplot.hist(e_data_clean, bins=100)
Похоже, должен быть чистый (и намного более быстрый для этого лайнер). Есть?