首页 > 解决方案 > gnuplot 箭头坐标 (x,y) 错误列

问题描述

我是 gnuplot 的新手,我的目标是在每个数据坐标之间绘制箭头。我的“.dat”文件只有两列,由一个选项卡分隔,其中第一列是 X,第二列是 Y 分量。头部应设置在下一个坐标中。

582.761 -326.288
574.806 -327.915

我的命令是:

plot 'file.dat' using 1:2 with vectors head filled

我只能得到以下错误信息:

此样式的列数不足

抱歉这个愚蠢的问题,但我既不理解文档也不理解同一主题的其他问题。

标签: gnuplot

解决方案


如果您检查help vectors,您会看到with vectors绘图样式需要 4 个值。如果我正确理解您的问题,我猜您想绘制从一条数据线到下一条数据线的箭头,对吗?

通过表达式(x0=x1,x1=$1,x0),您将先前的x值保留在 中x0,将当前值保留在 中x1,但您正在绘制x0. y0和相同y1。和只是绘图风格所需的和(x1-x0)值。(y1-y0)delta xdelta ywith vectors

代码:

### vectors from data line to the next
reset session

$Data <<EOD
1   1
2   2
3   5
2   4
1   2
EOD

x1=y1=NaN
plot $Data u (x0=x1,x1=$1,x0):(y0=y1,y1=$2,y0):(x1-x0):(y1-y0) w vectors head filled notitle

### end of code

结果:

在此处输入图像描述


推荐阅读