11
4
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?
11
4
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?
24
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
.
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 – 2014-10-03T20:50:37.507We can even divide the values of certain columns: plot "path/to/data.dat" using 1:($5/$3) with lines
– Dohn Joe – 2018-12-05T14:00:55.467
This operation is commonly known as "scaling", maybe that word merits to be in the title? – Dmitry Grigoryev – 2015-06-02T15:06:06.170