|
From: Michael H. <mh...@al...> - 2011-11-14 09:16:42
|
On 11/12/2011 05:43 PM, Krzysztof Berniak wrote:
> I'm writing script in python, which fitting exponencial curve to data (
> f(x) = a*exp(x*b).
> To this problem, I use gnuplot in my script. Gnuplot display parameters
> ( a +/- delta a; b +/- delta b)
> How Can I use/save this parameters in python variables in next steps of
> my script,
>
> def main():
> ...
>
>
> plot = Gnuplot.Gnuplot()
>
> plot('f1(x) = a1*exp(b1*x)')
> plot('a1 = 300; b1 = 0.005;')
> plot('fit f1(x) "data.txt" using 1:2 via a1, b1')
>
> print "first parameter", a1
> print "second parameter", b1 # is it feasible ? Or there is
> another way to see the results ( parameter a1 and b1) of gnuplot by python
>
> #plot('set terminal postscript')
> #plot('set output "output.ps <http://output.ps>"')
The communication from Gnuplot.py to gnuplot is currently
one-directional only. Therefore, there is no way for Gnuplot.py to see
the output that gnuplot writes to the terminal.
So without rewriting Gnuplot.py to change that fact (which would be a
big job), the easiest thing would be to have gnuplot write the results
of the fit to a file (see "help update"), then have Python read that
file. If you want more information about the fit, you can read the
logfile that gnuplot's "fit" command generates (see "help fit", "help
set fit").
Michael
--
Michael Haggerty
mh...@al...
http://softwareswirl.blogspot.com/
|