Python 函数应如何使用metpy的_到_点插值?

Python 函数应如何使用metpy的_到_点插值?,python,metpy,Python,Metpy,我想将地理参考数据重新划分为一个特定的网格,在lat和lon维度上具有不同的分辨率。之前我会使用basemap.interp,但是这个basemap已经死了。 我正在试验metpy包,而metpy.interpolate\u to\u points似乎是合适的候选者。只是,从中,我无法计算出应该输入的参数的格式。 内容如下: 点(类似数组的形状(n,D))–数据点的坐标。 值(类似数组、形状(n,)–数据点的值。席 (数组_-like,shape(M,D))–插入数据的点 关于“点”,我尝试将其

我想将地理参考数据重新划分为一个特定的网格,在lat和lon维度上具有不同的分辨率。之前我会使用
basemap.interp
,但是这个basemap已经死了。 我正在试验
metpy
包,而
metpy.interpolate\u to\u points
似乎是合适的候选者。只是,从中,我无法计算出应该输入的参数的格式。 内容如下:

点(类似数组的形状(n,D))–数据点的坐标。 值(类似数组、形状(n,)–数据点的值。席 (数组_-like,shape(M,D))–插入数据的点

关于“点”,我尝试将其作为一维阵列、二维网格(使用np.meshgrid获得),并以lon优先或lat优先的方式提供。“xi”也一样。例如:

从metpy.interpolate导入interpolate_到_点
out\u lons,out\u lats=np.meshgrid(out\u lons\u 1Darray,out\u lats\u 1Darray)
缩尺数组=插值到点([单位,单位],输入数组,[单位,单位])
无论我从哪个尝试中获得
ValueError:操作数无法与形状(192,)(288,)

非常感谢您对我的错误提出的任何建议。

此函数包装了
scipy.interpolate.griddata
,您可以查看它们的文档

他们的示例显示了以下内容,其作用与
metpy.interpolate.interpolate_to_points
函数相同:

def func(x, y):
    return x*(1-x)*np.cos(4*np.pi*x) * np.sin(4*np.pi*y**2)**2

grid_x, grid_y = np.mgrid[0:1:100j, 0:1:200j]
points = np.random.rand(1000, 2)
values = func(points[:,0], points[:,1])
grid_out = interpolate_to_points(points, values, (grid_x, grid_y))

只需提及,对于任何可能仍对快速解决方案感兴趣的人来说,以允许的基线图进行插值:从基线图源代码复制并使用
interp
函数工作正常,因为它不依赖于基线图本身的任何其他内容。谢谢。它只是简单地包装了
scipy.interpolate.griddata
而没有引起我的注意。现在很清楚了,只需要对网格化数据进行一些改组和扁平化。