Book Image

gnuplot Cookbook

By : Lee Phillips
Book Image

gnuplot Cookbook

By: Lee Phillips

Overview of this book

gnuplot is the world's finest technical plotting software, used by scientists, engineers, and others for many years. It is in constant development and runs on practically every operating system, and can produce output in almost any format. The quality of its 3d plots is unmatched and its ability to be incorporated into computer programs and document preparation systems is excellent. gnuplot Cookbook ñ it will help you master gnuplot. Start using gnuplot immediately to solve your problems in data analysis and presentation. Quickly find a visual example of the graph you want to make and see a complete, working script for producing it. Learn how to use the new features in gnuplot 4.4. Find clearly explained, working examples of using gnuplot with LaTeX and with your own computer programming language. You will master all the ins and outs of gnuplot through gnuplot Cookbook. You will learn to plot basic 2d to complex 3d plots, annotate from simple labels to equations, integrate from simple scripts to full documents and computer progams. You will be taught to annotate graphs with equations and symbols that match the style of the rest of your text, thus creating a seamless, professional document. You will be guided to create a web page with an interactive graph, and add graphical output to your simulation or numerical analysis program. Start using all of gnuplot's simple to complex features to suit your needs, without studying its 200 page manual through this Cookbook.
Table of Contents (18 chapters)
gnuplot Cookbook
About the Author
About the Reviewers
Finding Help and Information

Fitting functions to your data

If we want to get serious about fitting functions to our data, we can turn to gnuplot's sophisticated fit command.

Getting ready

You need the same datafile used in the previous recipe, rs.dat. The following figure shows the same noisy sine wave, but this time the overlaid curve seems to be perfectly smooth:

How to do it…

The following script will produce the previous figure:

f(x) = a*sin(b*x)
fit f(x) 'rs.dat' via a, b
plot 'rs.dat' with lines lw 0.5 notitle, f(x) lw 4 title "Fit by gnuplot"

How it works…

gnuplot's fit command takes a function defined by the user containing several parameters and attempts to find the set of values for these parameters that result in the best fit of the resulting function to the data specified. Best fit is in a nonlinear least-squares sense that is thoroughly discussed in the official gnuplot manual. After entering the fit command, gnuplot will iterate, displaying intermediate results on the console, until it finds an acceptable fit...