Freeze Me, Please! Vote for my bid in a contest to go on an Antarctic expedition.     Feed on Posts or Comments

General Austringer on 04 Nov 2008 03:14 pm

Book Review: “Gnuplot In Action” by Philipp K. Janert

A while back, I posted here about getting acquainted with “gnuplot”, a handy cross-platform plotting tool. Philipp K. Janert happened by and offered me a review copy of his book on “gnuplot”. I’m busily working up a manuscript for submission. Today, I was working on figures and dealing with “gnuplot” once again, and found occasion to refer to Janert’s text more than once on things that otherwise were a bit mysterious. That is despite the fact that “gnuplot” documentation is featured here and there across the web.

An example? I have some plots where I want to show two datasets at a time in the same plot. Here’s a trivial case where I actually plot the same dataset twice:

This relies on the use of “pm3d” mode in “gnuplot”, something that gets a fair bit of attention in “Gnuplot in Action”.

OK, so where’s a real two-dataset example? Here’s one I was working on, where I simply added the specification for the bottom map as in the trivial example above, but used a different data set for the surface rendering.

Obviously, I have a problem. I actually spent a fair chunk of time Googling to see if I could find someone else addressing this issue, without success. Eventually, I remembered Janert’s book and started looking through it. The solution found there lies with a generic data-handling facility in “gnuplot” and not with something specific to the “pm3d” mode I’m using. What’s happening is that the scale from the second dataset is being used to color-map the first dataset, with unappealing results. Fortunately, I can rescale the first dataset on the fly, as Janert points out in section 3.3, “Data Transformations”. I simply multiplied the value from the first dataset to fit it into the range of the second dataset.

And, of course, mixing a surface mapped dataset with one presented as lines is not a big deal.

My research currently involves making sense of large amounts of data. Part of the attraction to “gnuplot” is its ability to render surface-mapped graphics based on relatively simple instructions. I have various Perl scripts that pre-process the data and emit “gnuplot” scripts, then make a system call to “gnuplot” with the appropriate script. If I were doing all this in Matlab, I’d have to settle for having far fewer graphics produced, since that requires a fair degree of interactivity getting from data to graphic.

There are a lot of techniques and ideas in “Gnuplot in Action” that I haven’t had cause to use yet. So far, it has been a substantial technical aid toward my goal of producing publication-quality graphics. “gnuplot” is a handy, flexible tool for getting from data to visualization, and Philipp Janert’s “Gnuplot in Action” is a good introduction and technical reference to have on hand when using “gnuplot”.

Copy the code below to your web site.
x 
Share and Enjoy:
  • Digg
  • Facebook
  • Google
  • LinkedIn
  • MySpace
  • Reddit

Trackback This Post | Subscribe to the comments through RSS Feed

Leave a Reply

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word






Support This SiteCafePress Shop
The Austringer © 2009 |ShadedGrey made free by Web Hosting Bluebook