How do I set axis label with column header in gnuplot?

泄露秘密 提交于 2019-11-29 06:06:58

To elaborate the suggestion of @andyras, here is how you can do it:

datafile = 'filename.txt'
firstrow = system('head -1 '.datafile)
set xlabel word(firstrow, 1)
set ylabel word(firstrow, 2)
plot datafile using 1:2

You must plot with the explicit using statement, otherwise gnuplot will complain about bad data on line 1.

I don't think this feature is built in to gnuplot; you would probably have to use an awk-like utility to pull those labels out of a datafile.

You could try submitting a feature request on gnuplot's sourceforge site, and get feedback from the developers there.

I think it is supported. You are just supposed to be able to use "":

plot 'file' using "first":"second"

Although, if you want to do math in your using specification, you'll need the column("") function, too

plot 'file' using "first":(column("second")-(column("thrid"))

(Using only quoted header names with the math didn't work for me, anyway.)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!