Scipy interp2d函数产生z = f(x,y),我想求解x

时间:2018-07-27 00:49:40

标签: python numpy scipy

我正在scipy中使用2d插值函数来平滑2d图像。据我了解,插值将返回z = f(x,y)。我想做的是找到具有y和z已知值的x。我尝试过这样的事情

f = interp2d(x,y,z)

index =(np.abs(f(:,y)-z))。argmin()

但是,interp2d对象不能那样工作。有关如何执行此操作的任何想法?

1 个答案:

答案 0 :(得分:0)

我能够弄清楚这一点。 yvalue,zvalue,xmin和xmax是已知值。通过用x可以取的可能值创建linspace,可以创建具有所有对应函数值的列表。然后使用argmin()我们可以在列表中找到最接近已知z值的值。

f = interp2d(x,y,z)

xnew = numpy.linspace(xmin,xmax)

fnew = f(xnew,yvalue)

xindex =(numpy.abs(fnew-zvalue))。argmin()

xvalue = xnew(xindex)