How to plot ratios of values with Gnuplot

Gnuplot is a tool that can generate script-driven graphics, including plots of functions and data samples. Gnuplot contains a useful scripting language that allows you to process raw data files while producing graphics. For example, you can plot ratios of different values contained in raw data files.

If you would like to plot the ratio of data belonging to two different columns in a data file:

$ cat my.txt
1     10    20
2     20    25
. . .
gnuplot> plot "my.txt" using 1:($3/$2) title "ratio of the 3rd col over the 2nd col" with lp 

If you would like to plot the ratio of data belonging to two different data files:

$ cat A.txt
1 10
2 20
. . .
$ cat B.txt
1 11
2 30
. . .
gnuplot> plot "< join A.txt B.txt" using 1:($3/$2) "ratio of data in B.txt over data in A.txt" lp 

Subscribe to Xmodulo

Do you want to receive Linux FAQs, detailed tutorials and tips published at Xmodulo? Enter your email address below, and we will deliver our Linux posts straight to your email box, for free. Delivery powered by Google Feedburner.

Support Xmodulo

Did you find this tutorial helpful? Then please be generous and support Xmodulo!

The following two tabs change content below.
Dan Nanni is the founder and also a regular contributor of He is a Linux/FOSS enthusiast who loves to get his hands dirty with his Linux box. He likes to procrastinate when he is supposed to be busy and productive. When he is otherwise free, he likes to watch movies and shop for the coolest gadgets.

Leave a comment

Your email address will not be published. Required fields are marked *