Python 如何从Scipy数学函数中得到X-oder Y坐标

Python 如何从Scipy数学函数中得到X-oder Y坐标,python,scipy,coordinates,Python,Scipy,Coordinates,当我创建一个简单的数学函数时,比如。。 fX=2*X 使用scipy.interpolate-如何获得相应Y坐标的X坐标 以下是scipy函数: from scipy import interpolate testfunc = scipy.interpolate.interp1d([1,2], [2,4], kind='linear') 我想得到Y=4的X值应该是2。 我试过: 但是,我可能忽略了这里的要点,如果您遵循scipy.interpolate.interp1d示例,最终将得到两个长度

当我创建一个简单的数学函数时,比如。。 fX=2*X 使用scipy.interpolate-如何获得相应Y坐标的X坐标

以下是scipy函数:

from scipy import interpolate
testfunc = scipy.interpolate.interp1d([1,2], [2,4], kind='linear')
我想得到Y=4的X值应该是2。 我试过:


但是,我可能忽略了这里的要点,如果您遵循scipy.interpolate.interp1d示例,最终将得到两个长度相等的numpy数组。看起来你应该能够索引y数组和x数组,并得到你的答案。我不知道你是否会考虑这种方法“Pythic”,但它在这种情况下有效。

< P> >做逆插值是否有效?

x,y = ...
testfunc_inverse = scipy.interpolate.interp1d(y, x, kind='linear')
testfunc_inverse(4)

我没有-你已经有了f,因为它是线性的,你只需要f_inv=x/2。。。那你为什么要把这个从testfunc中去掉呢?@wim+1。我想你可能正在考虑一个更为重要的问题,但你现在描述它的方式有点让人困惑。
x,y = ...
testfunc_inverse = scipy.interpolate.interp1d(y, x, kind='linear')
testfunc_inverse(4)