11

I have gnuplot data file. I would like to plot it, but divide every value in the x-axis by n.

Can I do this from within gnuplot, or do I have to rewrite the data file?

Kenster
  • 7,483
  • 2
  • 32
  • 44
Joseph Turian
  • 311
  • 2
  • 4
  • 12

1 Answers1

26

Assuming that the x values are in the first column of the file 'test.dat' and the y values are in the second column of the same file, then you can write:

plot 'test.dat' using ($1/n):($2)

See the manual for more information and examples on the 'using' keyword.

Note that this will not change the values of your data file 'test.dat'. If you prefer to rewrite the data file, you can do it using awk. For example:

awk '{print $1/n,$2}' test.dat > testnew.dat

will substitute the x values in the first column of test.dat with x/n and will generate a new file called testnew.dat.

mrucci
  • 9,868
  • 3
  • 31
  • 31
  • Submitted an edit to fix a broken link to the last HTML version of the manual. Also note that the manuals are only available as PDF in recent versions. http://www.gnuplot.info/documentation.html – Asahiko Oct 03 '14 at 20:50
  • We can even divide the values of certain columns: `plot "path/to/data.dat" using 1:($5/$3) with lines` – Dohn Joe Dec 05 '18 at 14:00