如何防止标签重叠

Mar*_*tin 1 gnuplot

我正在运行以下命令在gnuplot中绘制几个X,Y点:

使用($ 2 + 3)绘制"Output.tsv":( $ 3 + 3):1带标签,"Output.tsv"使用2:3

一些数据点彼此非常接近,这使得标签不可读.有没有办法让gnuplot消除/减少标签之间的重叠?

在此输入图像描述

Mar*_*tin 5

我想你可以考虑3种选择:

1)使你的图表变得庞大并希望你的标签不重叠
2)将点作为不同的系列绘制,每个项目都有自己的图例
3)使用字母而不是标签,你可以在每个点使用一个字母

plot "???" using 1:2
plot "" using 1:2:(stringcolumn(3) ne 'compare to' ? 'if equal' : 'if not equal' ) with labels
Run Code Online (Sandbox Code Playgroud)

stringcolumn函数在第3列中查找,将值与字符串'compareto'进行比较,如果有匹配,则在该位置放置'if equal',否则'if equal equal'

因此,我在你的图表中看到类似Simulator的东西,你可以保持绿点并使用它将S与它放在上面

plot "" using 1:2:(stringcolumn(3) ne 'Simulator' ? 'S' : '' ) with labels
Run Code Online (Sandbox Code Playgroud)

我希望这有帮助.