gnuplot columnhead标签"在结束"并在关键

时间:2017-09-11 11:12:14

标签: gnuplot columnheader

关于gnuplot中的columnheader的两个问题:

1)我正在使用列标题绘制一些数据列,并且我想在每个图形行的末尾附近标记图形(使用"在结束")和键。如果我使用"取消设置键",我会在图表的末尾添加干净的标签。

unset key
plot for [col=2:6] file using 1:col with lp ls col title columnhead(col) at end

Graph 1

如果我发表评论"取消设置键"并尝试在每个图形的末尾附近绘制标签并在键中,我在正确绘制的键的右侧得到一些奇怪的工件。有什么方法可以摆脱这个神器吗?

### unset key
plot for [col=2:6] file using 1:col with lp ls col title columnhead(col), for [col=2:6] file using 1:col with lp ls 
col title columnhead(col) at end

Graph 2

2)有时我在标记时需要列标题的子字符串。我试过" substr" (见下文),但我得到一个" 0"而不是子串。有没有办法获得列标题的子字符串?

plot for [col=2:6] file using 1:col with lp ls col title substr(columnhead(col),0,1) at end

编辑:示例数据文件:

Date,V,W,D,Y,X
2017-09-03,0,0,0,0,-
2017-09-05,-3.67,-4.71,-2.86,-1.69,-
2017-09-06,-4.19,-6.42,-1.65,-1.86,-
2017-09-07,-2.41,-5.64,1.24,-0.26,0
2017-09-08,4.61,-5.38,1.47,0.45,-2.55

EDIT2:即使这个带有上述数据的简单脚本也给了我神器(Win7 x64,gnuplot 5.2)

set terminal gif
set output "test.gif"
set datafile separator ","
set timefmt "%Y-%m-%d"
set xdata time
plot for [col=2:6] "test.dat" using 1:col with lp ls  col title columnhead(col) at end

2 个答案:

答案 0 :(得分:1)

(这只是一个评论,但我想提供一个图片,所以将其作为答案发布)

您确定gnuplot脚本中的其他内容不会导致问题吗?使用您发布的数据

set datafile separator ","
set timefmt "%Y-%m-%d"
set xdata time
plot for [col=2:6] "test.dat" using 1:col with lp ls  col title columnhead(col) at end

给出

enter image description here

,不显示神器。

答案 1 :(得分:1)

5.2pl0中的错误。如果使用“at end”选项,它会覆盖图例中的线条:

plot for [i=1:5] i+x title "i=".i at end

5.0pl6不会这样做。错误报告已在sf.net上提交。