Using gnuplot, how can I plot sin(x) in the x-z plane and sin(x) in the x-y plane, both at the same time? I'm guessing I need to use the set parametric command and the splot command, but I can't seem to work out the rest! Does anyone know how to do this? I'm trying to generate a plot which demonstrates the nature of an electromagnetic wave. Thanks.
1
votes
1 Answers
2
votes
Yes, parametric mode is a possibility. For example, splot u,0,sin(u), u,sin(u),0
will plot the two (!) parametric curves u,0,sin(u)
and u,sin(u),0
. The variable u
is the parametric dummy variable, for a simple sine function we only need one of them, even in 3d mode.
It might look a bit nicer with the following settings, but this is of course my biased opinion, far from finished, and depends on your needs:
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