我有一个 numpy 2D 直方图,它使用两个空间坐标(x_array 和 y_array)对数据点进行分类,并对每个 bin 中第三个 data_array 组件的值进行平均。
代码如下:
xbins = 240 #image is 240x240
ybins = 240
H, xedges, yedges = np.histogram2d(y_array, x_array, bins=[ybins, xbins], weights=data_array)
count, x, y = np.histogram2d(y_array, x_array, bins=[ybins, xbins])
H/=count
extent = [yedges[0], yedges[-1], xedges[-1], xedges[0]]
plt.imshow(H, extent=extent, interpolation='nearest')
等等(x 和 y 在某些地方是颠倒的,我知道......这就是我让它工作的方式)。
我现在需要做的是对这些数据进行过采样(或网格化),即使用重叠的 bin 采样几次,这样整个采样就会移动,并且也向上(单独)移动半个 bin 宽度,以获得更平滑的图像。
我显然可以增加 bin 的数量来提高分辨率,但这只能在一定程度上起作用……在某个点上,有些 bin 没有任何数据点,因为它们是随机分布的。
我已经在这个上工作了一段时间,我只是被难住了。感谢您的任何帮助,您可以提供。