大佬教程收集整理的这篇文章主要介绍了如何使用 gnu plot 绘制带有指示方向的向量的圆圈?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个这样的数据文件:
1 1.680 24.250 0.1 0.0 1.830 24.250
2 6.330 24.860 0.1 30.0 6.460 24.935
3 9.440 24.320 0.1 60.0 9.515 24.450
4 12.110 25.790 0.1 -30.0 12.240 25.715
代表4个半径相同0.1米的圆。格式为:
number x y radius angle offset-x offset-y
目标是在指定角度的偏移 x 和偏移 y 处绘制带有箭头的 4 个圆圈,并使所有箭头的长度相同。我已经检查了很多示例,但无法从中提取出我想要做的事情。
这是我的 gnu 绘图代码:
#!/usr/local/bin/gnuplot
reset
set term pngcairo dashed Font "Times,20" size 1920,1080
set loadpath "/Users/woo/.gnuplotTing"
load 'default.plt'
set output 'avatars.png'
set grID
set xlabel "X" Font "Times Bold,20"
set ylabel "Y" Font "Times Bold,20"
set key outsIDe right top vertical
xf(theta) = 0.1*cos(theta/180.0*pi)
yf(theta) = 0.1*sin(theta/180.0*pi)
plot "plot_file.txt" using 2:3:4 with circles,\
"plot_file.txt" using 6:7:xf(5):yf(5) \
with vectors head size 0.1,20,60 filled
0.1 是试图减少向量的大小。我得到了圆圈,但偏移量不一样,应该是。我的偏移量应该在 0.15 米的半径范围内。 但是,所有向量的长度都在增长,并不指向指定的方向。
我觉得解决方案很明显,但我找不到。
主要问题是向量的 using
部分:
xf(theta) = 1.0*cos(theta/180.0*pi)
yf(theta) = 1.0*sin(theta/180.0*pi)
plot "plot_file.txt" using 2:3:4 with circles,\
"plot_file.txt" using 6:7:(xf($5)):(yf($5)) \
with vectors head size 0.1,20,60 filled
对于表达式,用 $5
代替 5
。此外,表达式应在括号中:using 6:7:(xf($5)):(yf($5))
而不是 6:7:xf(5):yf(5)
。
我也将 0.1 更改为 1.0,因为我想要单位向量。
结果如下:
每个箭头的长度实际上都相同,但看起来并非如此,因为 x 轴和 y 轴的缩放比例不同。要使两个轴具有相同的缩放比例,请执行
set size ratio -1
结果如下:
以上是大佬教程为你收集整理的如何使用 gnu plot 绘制带有指示方向的向量的圆圈?全部内容,希望文章能够帮你解决如何使用 gnu plot 绘制带有指示方向的向量的圆圈?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。