如何在gnuplot中绘制垂直线?

aga*_*gam 29 gnuplot

例如,如果我有一个图表,并希望沿X轴每10个单位添加垂直线.

Thr*_*986 43

这是我的perl脚本中的一个片段来执行此操作:

print OUTPUT "set arrow from $x1,$y1 to $x1,$y2 nohead lc rgb \'red\'\n";
Run Code Online (Sandbox Code Playgroud)

正如你可能从上面猜到的那样,它实际上被描绘成一个"无头"箭头.

  • 谢谢!仅仅为了总n00bs的利益而且是迂腐的,在y = 0到y = 100的x = 1处绘制垂直线的完整示例将是:设置箭头从1,0到1,100 nohead lc rgb '红色' (9认同)

小智 31

来自Gnuplot文档.要在x = 3处从图形的底部到顶部绘制垂直线,请使用:

set arrow from 3, graph 0 to 3, graph 1 nohead


Pet*_*ok. 13

或者你也可以这样做:

p '< echo "x y"' w impulse
Run Code Online (Sandbox Code Playgroud)

x和y是绘制垂直条的点的坐标


小智 9

您可以将该grid特征用于第二个未使用的轴x2,这是绘制一组常规间隔线的最自然的方式.

set grid x2tics
set x2tics 10 format "" scale 0
Run Code Online (Sandbox Code Playgroud)

通常,网格绘制在与轴上的抽搐相同的位置.如果线的位置与抽搐位置不对应,gnuplot会提供一组额外的抽搐,称为x2tics.format ""scale 0隐藏x2tics,因此您只能看到网格线.

您可以风格的线条像往常一样linewith,linecolor.