图形gnuplot中的绘制线和向量

图形gnuplot中的绘制线和向量,gnuplot,vector-graphics,Gnuplot,Vector Graphics,大家好,有人知道如何制作这种类型的图形吗 我试图画出线和点的组合,但还是失败了 我想我已经把一个范围放到了绘图点上,以得到下面的例子 dat.txt 0.936 1.735E-5 0.9317 1.682E-5 0.9274 1.633E-5 0.9232 1.588E-5 0.9189 1.545E-5 0.9146 1.504E-5 0.9103 1.466E-5 0.9061 1.431E-5 0.9018 1.396E-5 0.8975 1.364E-5 0.893

大家好,有人知道如何制作这种类型的图形吗

我试图画出线和点的组合,但还是失败了

我想我已经把一个范围放到了绘图点上,以得到下面的例子

dat.txt

0.936   1.735E-5
0.9317  1.682E-5
0.9274  1.633E-5
0.9232  1.588E-5
0.9189  1.545E-5
0.9146  1.504E-5
0.9103  1.466E-5
0.9061  1.431E-5
0.9018  1.396E-5
0.8975  1.364E-5
0.8932  1.333E-5
0.889   1.304E-5
0.8847  1.277E-5
阴谋

set xl 'Potential / V'
set yl 'Current / A'
plot 'dat.txt' u 1:2 w l lw 2 lt -1,\
'dat.txt' u 1:2 w p pt 2 ti ''
应如何绘制的示例


如果你使用向量,你可能会得到你想要的。向量采用以下类型的参数:

plot 'mydata.dat' a:b:c:d with vectors
前两列
a
b
是起点,后两列
c
d
是向量的相对坐标

因此,如果您可以从数据中计算这些值,您应该能够获得所需的结果

set xl 'Potential / V'
set yl 'Current / A'
定义可以使用的自定义箭头样式:

set style arrow 1 head back filled linetype 1 linecolor rgb "red"  
set xrange [0.88:0.94]
然后定义函数来计算之前的x、y值和增量

prev_x = NaN
prev_y = NaN
dx(x) = (x_delta = x-prev_x, prev_x = ($0 > 0 ? x : 1/0), x_delta)
dy(y) = (y_delta = y-prev_y, prev_y = ($0 > 0 ? y : 1/0), y_delta)
最后,使用vectors命令绘制它们

plot 'stats.dat' u 1:2 w l lw 2 lt -1, '' u (prev_x):(prev_y):(dx($1)):(dy($2)) every 2 w vectors arrowstyle 1 ti ''

编辑 OP提供完整数据后,脚本更改为:

set xl 'Potential / V'
set yl 'Current / A'

set style arrow 1 head back filled size screen 0.015,20,35 linetype 1 linecolor rgb "red"  

prev_x = NaN
prev_y = NaN

dx(x) = (xd = x-prev_x, prev_x = ($0 > 0 ? x : 1/0), xd)
dy(y) = (yd = y-prev_y, prev_y = ($0 > 0 ? y : 1/0), yd)

plot 'data.dat' u 1:2 w l lw 2 lt -1, '' u (prev_x):(prev_y):(dx($1)):(dy($2)) every 10 w vectors arrowstyle 1 ti ''
使用以下图表:


可能有人知道如何制作,但您在制作过程中遇到了什么错误?如果你正在寻找如何制作它的解释,这对这个网站来说太宽泛了。我无法在gnuplot中制作这种类型的图形。我刚刚看到这张图片,想做一个类似的,但只知道情节线@匿名你可能会想阅读。我对gnuplot所知甚少,我只是想说明这张图片,看看是否有可能实现同样的效果。抱歉,如果它对社区没有贡献@Anonymous@FabioLima没问题,如果你能通过一些工作改进这个问题,那么我相信这里的人们会非常乐意提供帮助。你很可能会发现一些有用的东西,并最终把它变成一个好的资源。需要考虑的几个问题是:在哪里以及为什么需要这个情节?什么样的数据最好用上面的图来表示?哪种Gnuplot绘图样式有用,以及什么将生成数据?我能想出一些类似于绘图的东西吗?如果我有一个带有正负轴的数据集,我应该改变向量来监控整个曲线吗。有必要改变三角洲吗?@ZahaibAkhtar@FabioLima如果您可以发布一些模型数据,则不太了解数据集中的正轴和负轴。此处链接循环完整模型的日期(负轴和正轴)@扎哈伊布-akhtar@FabioLima好的,请查看我的更新答案和您提供的数据。