Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.graphics.apps.gnuplot > #3143 > unrolled thread

Plot fit function on a defined range

Started byAxel <axeldibert@gmail.com>
First post2015-11-28 17:22 -0800
Last post2015-12-04 17:04 -0800
Articles 3 — 2 participants

Back to article view | Back to comp.graphics.apps.gnuplot


Contents

  Plot fit function on a defined range Axel <axeldibert@gmail.com> - 2015-11-28 17:22 -0800
    Re: Plot fit function on a defined range Karl-Friedrich Ratzsch <mail.kfr@gmx.net> - 2015-11-29 13:13 +0100
    Re: Plot fit function on a defined range Axel <axeldibert@gmail.com> - 2015-12-04 17:04 -0800

#3143 — Plot fit function on a defined range

FromAxel <axeldibert@gmail.com>
Date2015-11-28 17:22 -0800
SubjectPlot fit function on a defined range
Message-ID<a58b272e-10d9-48af-90d5-a780b5ae385e@googlegroups.com>
Hi to all the community!
I am new here and I need a hand to solve the issue described below.

I have five sets of experimental data named {1, ..., 5}.txt and I fitted the points with polynomial functions. I am looking to plot the functions only on specific x- and y-ranges (different from function to function) where the extremes of the ranges are decimal numbers.

When trying to do this, I obtain a mess: it seems that gnuplot considers every range defined for a function with 'plot [x-range][y-range]  etc.' as it were the range of the axis of the graph previously defined with 'set xrange [x1:x2]' and 'set yrange [y1:y2]'. How can I avoid this behavior?
Example: http://i66.tinypic.com/21nldom.jpg

The script is the following:
set terminal epslatex color
set decimalsign locale [comma]
set title "Title"
set format x "$%0.3f$"
set format y "$%0.1f$"
set xlabel "Label"
set ylabel "Label"
set xrange [0:1]
set yrange [50:80]
set grid
unset key
set output 'name.tex'
f(x) = a*x**3 + b*x**2 + c*x + d
[...]
fit f(x) '1.txt' using 2:1 via a, b, c, d
[...]
plot [0.9000:1][60.0:70.0] f(x) linecolor rgb "black"
[...]

I am using gnuplot 5.0 patchlevel 1 on Mac OS X El Capitan.

I really appreciate any help!
Axel

[toc] | [next] | [standalone]


#3144

FromKarl-Friedrich Ratzsch <mail.kfr@gmx.net>
Date2015-11-29 13:13 +0100
Message-ID<n3eq48$llj$1@solani.org>
In reply to#3143
The first range specifier in a plot command supersedes the range
specified by "set xrange", unless you mark it with the keyword "sample":

set xrange [0:10]
plot sample [2:4] f(x), [1:3] sin(x)

Try it on an interactive terminal first so you don't have to run
LaTeX every time before you see a resukt.

And your example graph looks like you do several plots on the same
output file. You should either use a single plot command

plot f1(x), "data1", \
     f2(x), "data2", \
     ....

or first plot everything to an interactive terminal like "wxt" and
then use a single "replot" command to plot everything to your eps file.

The terminals for file output don't have a well defined behaviour
for plotting to them more than once.

 Karl


Am 29.11.2015 um 02:22 schrieb Axel:
> Hi to all the community!
> I am new here and I need a hand to solve the issue described below.
> 
> I have five sets of experimental data named {1, ..., 5}.txt and I fitted the points with polynomial functions. I am looking to plot the functions only on specific x- and y-ranges (different from function to function) where the extremes of the ranges are decimal numbers.
> 
> When trying to do this, I obtain a mess: it seems that gnuplot considers every range defined for a function with 'plot [x-range][y-range]  etc.' as it were the range of the axis of the graph previously defined with 'set xrange [x1:x2]' and 'set yrange [y1:y2]'. How can I avoid this behavior?
> Example: http://i66.tinypic.com/21nldom.jpg
> 
> The script is the following:
> set terminal epslatex color
> set xrange [0:1]
> set yrange [50:80]
> set grid
> unset key
> set output 'name.tex'
> f(x) = a*x**3 + b*x**2 + c*x + d
> [...]
> fit f(x) '1.txt' using 2:1 via a, b, c, d
> [...]
> plot [0.9000:1][60.0:70.0] f(x) linecolor rgb "black"
> [...]
> 
> I am using gnuplot 5.0 patchlevel 1 on Mac OS X El Capitan.

[toc] | [prev] | [next] | [standalone]


#3145

FromAxel <axeldibert@gmail.com>
Date2015-12-04 17:04 -0800
Message-ID<235ee9bc-8abc-4b03-80cc-1b23cdbf8e21@googlegroups.com>
In reply to#3143
Thank you very much, Karl. Problem solved!

One of the issues in the code (in addition to the use of the "plot" command) was the definition of both an x-range and an y-range after "plot sample", that is not only mathematically unnecessary but also an error (I should have read the manual first!).

Axel

[toc] | [prev] | [standalone]


Back to top | Article view | comp.graphics.apps.gnuplot


csiph-web