我推荐使用griddata方法进行插值。样本是:
import numpy as np
from matplotlib.mlab import griddata
import matplotlib.pyplot as plt
xs0 = np.random.random((1000)) * np.pi - np.pi/2
ys0 = np.random.random((1000)) * 3.5
zs0 = np.random.random((1000))
N = 30j
extent = (-np.pi/2,np.pi/2,0,3.5)
xs,ys = np.mgrid[extent[0]:extent[1]:N, extent[2]:extent[3]:N]
resampled = griddata(xs0, ys0, zs0, xs, ys)
plt.imshow(resampled.T, extent=extent)
plt.plot(xs0, ys0, "r.")
plt.plot(xs, ys, "b.")
plt.title("imshow for irregularly spaced data using griddata")
plt.show()
我想从你的3 * X-阵列过渡到三个X阵列是显而易见的。
结果是:
红点显示的数据,对现在间隔规则的数据的“原始”的位置,蓝点。
griddata返回一个被屏蔽的数组。无法评估插值的所有点都被屏蔽,然后绘制为白色区域。
HTH, 托尔斯滕
HM最终interp2d打算做的工作......让我们看看 – user1805743
如果你解决了你的问题,你可以请回答自己的问题,接受的答案? – tacaswell