nicetry
nicetry

Reputation: 177

How to plot 3 columns in GNUplot?

I have files looking like this:

Number Data1 Data2
 1  9.10 4.022
 2  15.27 3.996
 3  21.92 4.004
 4  21.19 4.026
 5  20.67 4.022
 6  20.99 4.000
 7  19.80 4.004
 8  20.01 3.931
 9  20.18 4.004
10  19.78 4.007

I want to plot Number in X axes, Data1 in leftY and Data2 in rightY, but I can not figure out how to do it.

Thanks

Upvotes: 3

Views: 3315

Answers (1)

vaettchen
vaettchen

Reputation: 7659

Just a brief annotated sample, using your data saved in a file so.dat:

# Set ticks for 2nd y axis
set y2tics 
# We don't want to see the left ticks on the right axis
set ytics nomirror

# Set ranges so that the data points are not on the axis
set xrange [0:11]
set yrange [8:23]
set y2range[3.95:4.05]

# use first line of the file for labels
set key autotitle columnhead
# display key in least busy area
set key bottom right

# Title and axis labels
set title "Nice Try"
set xlabel "Number"
set ylabel "Data1"
set y2label "Data2"

plot "so.dat" using 1:2 axes x1y1 with points pointsize 2,\
     "" u 1:3 axes x1y2 w p ps 2 pointtype 6

One can do a lot more decoration etc. but I think this is the essence of what you want. The graph produced:

enter image description here

Upvotes: 3

Related Questions