这是我第一次尝试使用gnuplot,我找不到任何关于如何完成此操作的说明。我找到的最接近的是:
http://gnuplot.sourceforge.net/docs_4.2/node259.html
使用1:2:3:4绘制'file.dat',向量头填充lt 2
但我找不到关于“file.dat”的任何解释。
那么有人可以给出一个简单的例子来说明如何绘制一个简单的2d矢量箭头吗?感谢。
答案 0 :(得分:11)
gnuplot内置了非常好的帮助/文档。只需输入help plot
或help vector
即可了解有关如何在gnuplot中绘制向量的更多信息。
2D
vectors
样式绘制从(x,y)到(x + xdelta,y + ydelta)的向量。在每个向量的末尾绘制一个小箭头。
4列:x y xdelta ydelta
这意味着,您的输入文件应该有4列,其中前两列定义向量/箭头的起始(x,y)位置,最后两列定义其(x,y)方向:
# file.dat
0 0 .5 .5
0 1 -.5 .5
1 1 1 0
现在输入以下命令
plot "file.dat" using 1:2:3:4 with vectors filled head lw 3
给出以下输出:
使用set arrow
命令
如果您只需要绘制一些矢量/箭头(例如,突出显示图中的某些点),请考虑使用set arrow
命令。
set arrow 1 from pi/2,1 to pi/2,0
set arrow 2 from pi*3/2,-1 to pi*3/2,0
plot[0:2*pi] sin(x)
答案 1 :(得分:1)
您可以在电子表格中创建'file.dat'
,将其另存为文本,并使用cd
命令将gnuplot指向其位置,将其放在gnuplot的路径中。如果这与您不一致,请使用gnuplot手册中的'+'
和'++'
以及'-'
查看示例。这些是“虚拟数据文件”。注意,前两个是针对一个和两个列数据点,即(x)或(x,y)。您必须使用$1
和$2
作为变量来计算dx和dy。必须设置xrange
和yrange
变量以及密度isosamples
才能生效。
像......那样的东西。
set isosamples 30
set samples 30
set xrange [-10:10]
set yrange [-10:10]
plot '++' using 1:2:(0.1*sin($1)):(0.1*cos($2)) with vectors