0
我有2个离散坐标,X和Y.我打电话plt.plot(X,Y)
并得到好的绘图。不是我想从该图(函数图)中获取X的值(X不包含在文件中)。比如我有X=[1,2,3,4] Y=[0.4,0.5, 0.8, 0.85]
如何获得价值X
时Y = 0.43 ?
如何在python中绘制函数值
我有2个离散坐标,X和Y.我打电话plt.plot(X,Y)
并得到好的绘图。不是我想从该图(函数图)中获取X的值(X不包含在文件中)。比如我有X=[1,2,3,4] Y=[0.4,0.5, 0.8, 0.85]
如何获得价值X
时Y = 0.43 ?
如何在python中绘制函数值
随着numpy的:
import numpy as np
X=[1,2,3,4]
Y=[0.4 ,0.5, 0.8, 0.85]
y = .43
x = np.interp(y, Y, X)
没有numpy的:
X=[1,2,3,4]
Y=[0.4, 0.5, 0.8, 0.85]
y = .43
for i, yi in enumerate(Y):
if y < yi:
break
k = (X[i] - X[i-1])/(Y[i] - Y[i-1])
m = X[i-1]
x = k*(y-Y[i-1])+m
注意,该函数y = f(x)的有为了可逆(确定),并且y必须在Y的范围内才能工作,因为我没有添加任何边界检查。
我要做的,就是我计算感兴趣区域的斜率,然后使用在从Y[i-1]
谢谢大家,iterp正在工作。 –
偏移找到该值你不得不插值(如你的情节例行已经这样做了。线性)。考虑[numpy.interp](https://docs.scipy.org/doc/numpy/reference/generated/numpy.interp.html) –
你需要更具体 - 你指定的值不是线性的,所以你的要根据线性拟合,多项式拟合,梯形拟合或其他方法返回Y.另外,请展示您的尝试,以便我们更容易地为您提供帮助。 – jolindbe
我需要做梯形拟合 –