我的问题非常简单。假设我有一个带有列标题的数据文件,如下所示
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
将列标题用作键输入,但这并不是我想要的。
答案 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”))
(无论如何,仅使用带引号的头文名称对我来说无效。)