如何找到与拟合双高斯的y轴的交点

时间:2018-12-18 09:57:44

标签: python curve-fitting gaussian data-fitting

我已经用双高斯拟合了我的数据,现在我必须找到该拟合下的恒定面积与y-轴相交的位置。为了更好地理解我在说和搜索的内容,我提供了代码和图片。在第一块中,只有我的双高斯拟合函数。

# this is my fit function 
def func(x, *params):
y = np.zeros_like(x)

for i in range(0, len(params), 3):
    ctr = params[i]
    amp = params[i+1]
    wid = params[i+2]
    y = y + amp * np.exp( -((x - ctr)/wid)**2) + amp * np.exp( -((x - 
    ctr+180)/wid)**2)
 return y

然后我只是从外部csv文件中导入数据,该数据具有两列的值,并将它们分别寻址到x和y,我猜这是拟合的起始参数

data=np.loadtxt("test.csv")
x= data[:,0]
y= data[:,1]
guess = [20, 0.7, 30, 210, 0.7, 30, 300, 0.05, 10]


popt, pcov = curve_fit(func, x, y, p0=guess)
fit1 = func(x, *popt)
plt.plot(x, y)
plt.plot(x, fit1 , 'r-')
plt.show()

然后我收到的是合适的:

fit

现在的问题是如何找到该交点或如何计算双高斯下的面积? (我已经在图中用绿线标记了它,因此我正在搜索该区域或至少在该线与y轴相交的位置):

intersection

您有解决此问题的想法吗?

0 个答案:

没有答案