Gnuplot:具有交替偏移的数据点标签(高于/低于数据点)

Gnuplot:具有交替偏移的数据点标签(高于/低于数据点),gnuplot,Gnuplot,我在某个数据集中绘制了几条线。有两个数据点(下面示例中的第13列)是特殊的,我希望它们用圆圈标记并标记(标签在第12列) 我已经知道怎么做了。不幸的是,标签有时会重叠,这使得它们无法阅读。 如何使标签在数据点上方/下方交替显示?我试图定义一个在-1/1之间切换的函数,但失败了。我还尝试通过添加 "data.csv" using 0:13:(sprintf("(%d, %d)", $1, $12)) with labels nopoint offset char 1,int(-5*(rand(0)

我在某个数据集中绘制了几条线。有两个数据点(下面示例中的第13列)是特殊的,我希望它们用圆圈标记并标记(标签在第12列)

我已经知道怎么做了。不幸的是,标签有时会重叠,这使得它们无法阅读。 如何使标签在数据点上方/下方交替显示?我试图定义一个在-1/1之间切换的函数,但失败了。我还尝试通过添加

"data.csv" using 0:13:(sprintf("(%d, %d)", $1, $12)) with labels nopoint offset char 1,int(-5*(rand(0))) notitle
但这也不起作用(没有明显的效果)

下面是当前版本的一个示例(通过绘制更多的线条,我试图使代码示例保持简短)。 谢谢你的帮助


尝试使用
将数据点分成两组,每个

plot "data.csv" using 0:13 with circles lt 3 fs transparent solid 0.3 noborder notitle,\
"data.csv" using 0:13:(sprintf("(%d, %d)", $1, $12)) every 2::0 with labels nopoint offset char 1,-2 notitle,\
"data.csv" using 0:13:(sprintf("(%d, %d)", $1, $12)) every 2::1 with labels nopoint offset char 1,2 notitle,\
"data.csv" using 0:6 with lines lt 7 lw 2
然后,每个奇数数据点都有一个正偏移量;每个偶数数据点都有负偏移(或奇偶;-))



注意:如果在逗号分隔的绘图语句中重复使用同一个源(文件),可以使用“”,而不是重复“data.csv”。

谢谢你,汤姆,你的回答有所帮助,标签现在在上面和下面。但不知怎的,它们在x轴上发生了移动,就像在这张照片上看到的那样。此外,是否可以稍微随机化偏移量?因为在我的数据中,可能有三个或更多的数据点在一起。。。和thx的提示与“”的快捷方式:)刚刚注意到…上传的图片使用偏移量23,-2,因为我摆弄周围与您的建议。在偏移量为1,-2的情况下,标签会更向左移动附加注释:这可能是由于数据文件的结构?并非第13列中的每一行都已填充。数据样本:2016-04-04;9789.77;9907.05;9732.82;9822.08;9893.85;9655.64;10045.40;9250.40;9779.70;;; 2016-04-05;9647.81;9661.30;9553.17;9563.36;9832.69;9722.31;9975.32;9316.25;9779.70;基军十字;中性\n短;9722.309570 2016-04-06;9582.46;9635.91;9505.90;9624.51;9809.05;9722.31;9862.12;9316.25;9779.70;;; 2016-04-07;9648.55;9702.18;9484.75;9530.62;9791.22;9791.64;9952.90;9327.75;9779.70;Tenkan/Kijun Cross;弱\n短;9791.219727'(希望这是可读的…)
plot "data.csv" using 0:13 with circles lt 3 fs transparent solid 0.3 noborder notitle,\
"data.csv" using 0:13:(sprintf("(%d, %d)", $1, $12)) every 2::0 with labels nopoint offset char 1,-2 notitle,\
"data.csv" using 0:13:(sprintf("(%d, %d)", $1, $12)) every 2::1 with labels nopoint offset char 1,2 notitle,\
"data.csv" using 0:6 with lines lt 7 lw 2