Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PYTHON通过基于距离插值周围点列表来获取2d点的值_Python - Fatal编程技术网

PYTHON通过基于距离插值周围点列表来获取2d点的值

PYTHON通过基于距离插值周围点列表来获取2d点的值,python,Python,我正在寻找一种方法,通过基于距离对附近点的值进行插值,在给定具有已知值(x,y,value)的点列表的情况下获得2d点(x,y)的值。 点坐标和值是浮动的,它们不在网格或任何其他类型的图案中。也许您正在寻找scipy的插值: from scipy import interpolate ''' Interpolate over a 2-D grid. x, y and z are arrays of values used to approximate some function f: z =

我正在寻找一种方法,通过基于距离对附近点的值进行插值,在给定具有已知值(x,y,value)的点列表的情况下获得2d点(x,y)的值。
点坐标和值是浮动的,它们不在网格或任何其他类型的图案中。

也许您正在寻找scipy的插值:

from scipy import interpolate

'''
Interpolate over a 2-D grid.

x, y and z are arrays of values used to approximate some function f: z = f(x, y). 
This class returns a function whose call method uses spline interpolation 
to find the value of new points.

'''

x = np.arange(-5.01, 5.01, 0.25)
y = np.arange(-5.01, 5.01, 0.25)
xx, yy = np.meshgrid(x, y)
z = np.sin(xx**2+yy**2)
f = interpolate.interp2d(x, y, z, kind='cubic')

# for new points
xnew = np.arange(-5.01, 5.01, 1e-2)
ynew = np.arange(-5.01, 5.01, 1e-2)
znew = f(xnew, ynew)

谢谢你的回复!z=np.sin(xx2+yy2)仅仅是为了创建“随机”z值,还是有原因?干杯是的,这只是为了给z创造价值。P.S.如果你认为你的问题被回答了,就把它标记出来。我试着让它工作,我用包含x值、y值和z值的实际numpy数组替换了arange和sin,用我要找的点的坐标替换了xnew和ynew,我得到了TypeError:m>=(kx+1)(ky+1)你能试着使用scipy.interpolate.LinearNDInterpolator吗?我得到了ValueError:输入数据必须至少是二维的,我怀疑它需要元组或点的东西:/不知道