从gnuplot获取拟合数据

从gnuplot获取拟合数据,gnuplot,octave,Gnuplot,Octave,我经常使用倍频程来创建数据,我可以根据我的实验室结果绘制数据。然后,该数据在gnuplot中安装了一些函数: f1(x) = a * exp(-x*g); fit f1(x) "c_1.dat" using 1:2:3 via a,g 这将创建一个fit.log: ******************************************************************************* Tue May 8 19:13:39 2012 FIT: d

我经常使用倍频程来创建数据,我可以根据我的实验室结果绘制数据。然后,该数据在gnuplot中安装了一些函数:

f1(x) = a * exp(-x*g);
fit f1(x) "c_1.dat" using 1:2:3 via a,g
这将创建一个
fit.log

*******************************************************************************
Tue May  8 19:13:39 2012


FIT:    data read from "e_schwach.dat" using 1:2:3
        format = x:z:s
        #datapoints = 16
function used for fitting: schwach(x)
fitted parameters initialized with current variable values



 Iteration 0
 WSSR        : 12198.7           delta(WSSR)/WSSR   : 0
 delta(WSSR) : 0                 limit for stopping : 1e-05
 lambda   : 14.2423

initial set of free parameter values

mu2             = 1
omega2          = 1
Q2              = 1

After 70 iterations the fit converged.
final sum of squares of residuals : 46.0269
rel. change during last iteration : -2.66463e-06

degrees of freedom    (FIT_NDF)                        : 13
rms of residuals      (FIT_STDFIT) = sqrt(WSSR/ndf)    : 1.88163
variance of residuals (reduced chisquare) = WSSR/ndf   : 3.54053

Final set of parameters            Asymptotic Standard Error
=======================            ==========================

mu2             = 0.120774         +/- 0.003851     (3.188%)
omega2          = 0.531482         +/- 0.0006112    (0.115%)
Q2              = 17.6593          +/- 0.7416       (4.199%)


correlation matrix of the fit parameters:

               mu2    omega2 Q2     
mu2             1.000 
omega2         -0.139  1.000 
Q2             -0.915  0.117  1.000 
有没有办法把参数和它们的误差恢复到八度?我的意思是我可以编写一个Python程序来解析它,但我希望避免这种情况

更新
这个问题不再适用于我,因为我现在在实验室工作中使用Python和matplotlib,它可以从一个程序中完成所有这些。如果其他人也有同样的问题,我会保留这个问题。

我对gnuplot倍频程接口了解不多,但让您(解析)生活更轻松的是您可以:

set fit errorvariables
fit a*x+g via a,g
set print "fit_parameters.txt"
print a,a_err
print g,g_err
set print
现在,您的变量及其各自的错误已包含在文件“fit_parameters.txt”中 不需要从python进行解析

fit
上的文档中:

如果gnuplot是用这个选项构建的,并且您使用
set激活了它
拟合误差变量
,每个拟合参数的误差将为 存储在名为类似参数的变量中,但带有
\u err
附加。因此,这些误差可以作为进一步分析的输入 计算


我对gnuplot Octave接口了解不多,但让您(解析)生活更轻松的是您可以:

set fit errorvariables
fit a*x+g via a,g
set print "fit_parameters.txt"
print a,a_err
print g,g_err
set print
现在,您的变量及其各自的错误已包含在文件“fit_parameters.txt”中 不需要从python进行解析

fit
上的文档中:

如果gnuplot是用这个选项构建的,并且您使用
set激活了它
拟合误差变量
,每个拟合参数的误差将为 存储在名为类似参数的变量中,但带有
\u err
附加。因此,这些误差可以作为进一步分析的输入 计算