使用gnuplot,我如何同时在x-y平面上绘制sin(x)和在x-y平面中绘制sin(x)?我猜我需要使用set parametric命令和splot命令,但我似乎无法解决其余问题!有谁知道如何做到这一点?我正在尝试生成一个能够证明电磁波性质的图。感谢。
答案 0 :(得分:1)
是的,参数模式是可能的。例如,splot u,0,sin(u), u,sin(u),0
将绘制两条(!)参数曲线u,0,sin(u)
和u,sin(u),0
。变量u
是参数虚拟变量,对于简单的正弦函数,我们只需要其中一个,即使在3d模式下也是如此。
使用以下设置可能看起来更好一些,但这当然是我的偏见,远非完成,取决于您的需求:
set terminal pngcairo
set output "emfield.png"
set yrange [-2:2]
set zrange [-2:2]
set parametric
umax = 6*pi
set urange [0:umax]
unset border
unset xtics
unset ytics
unset ztics
# Set zeroaxes
set xyplane at 0
set arrow from 0,0,0 to (umax*1.1),0,0 size screen 0.020,15,60 filled
set arrow from 0,1,0 to 0,-1,0 size screen 0.020,15,60 filled
set arrow from 0,0,-1.4 to 0,0,1.4 size screen 0.020,15,60 filled
splot u,0,sin(u) lc 6, u,sin(u),0 lc 7