如何在gnuplot中设置带有列标题的轴标签?

时间:2013-04-18 17:16:57

标签: gnuplot columnheader

我的问题非常简单。假设我有一个带有列标题的数据文件,如下所示

first second
1 1 
2 1
3 6
4 9

在gnuplot中我如何使用列标题作为轴标签来绘制数据文件?例如通过调用

plot datafile using 1:2

我的xax标记为first,y轴标记为second

编辑:我知道我可以通过set key auto title column head将列标题用作键输入,但这并不是我想要的。

3 个答案:

答案 0 :(得分:8)

详细说明@andyras的建议,以下是如何做到的:

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

您必须使用明确的using语句进行绘图,否则gnuplot会抱怨bad data on line 1

答案 1 :(得分:1)

我不认为这个功能是内置于gnuplot;您可能必须使用类似awk的实用程序将这些标签从数据文件中拉出来。

您可以尝试在gnuplot的sourceforge网站上提交功能请求,并从那里获得开发人员的反馈。

答案 2 :(得分:-2)

我认为它得到了支持。你应该能够使用“”:

  

使用“first”绘制'file':“second”

虽然,如果你想在你的使用规范中做数学,你也需要列(“”)函数

  

使用“first”绘制'文件':(列(“秒”) - (列(“thrid”))

(无论如何,仅使用带引号的头文名称对我来说无效。)