【发布时间】:2011-11-07 16:17:40
【问题描述】:
我有一个 1.0e6 作为无数据值的 2D numpy 数组。我想生成数据的直方图,虽然我已经成功了,但这并不是最好的方法。
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)
似乎应该有一个干净的(并且为此更快的一个班轮)。有吗?
【问题讨论】:
标签: python numpy matplotlib