16

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

first second
1 1 
2 1
3 6
4 9

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

plot datafile using 1:2

我得到 xaxis 标记first和 yaxis 标记second

编辑:我确实知道我可以通过 使用列标题作为键条目set key auto title column head,但这并不是我想要的。

4

3 回答 3

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.

于 2013-08-23T14:03:55.953 回答
1

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

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

于 2013-04-18T18:28:17.383 回答
-2

我认为是支持的。您应该能够使用“”:

使用“第一”:“第二”绘制“文件”

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

使用“first”绘制“文件”:(column(“second”)-(column(“thrid”))

(无论如何,仅使用带引号的标题名称对我不起作用。)

于 2013-08-19T08:07:02.087 回答