在一个gnuplot中绘制两个splots

时间:2016-11-14 22:56:32

标签: gnuplot

我目前在gnuplot脚本中绘制了一些带有一些点的螺旋线。现在我想在另一个螺旋内绘制第二个螺旋,公式为:splot [t = -1.5 * pi:6 * pi] sin(t),cos(t),t * 0.23246067325

但是,如果我只是将命令添加到脚本中,它似乎无法工作。有没有具体的方法呢?

reset
clear
set parametric
unset key
unset tics
unset border 

set termoption dashed
set termoption dashlength 2

set object rectangle from screen 0,0 to screen 1,1 behind fillcolor rgb 'white' fillstyle solid noborder

set style line 4 lc rgb 'black' pt 7
set style line 7 lc rgb 'royalblue' pt 7 ps 10

splot [t=-1.5*pi:6*pi] sin(t),cos(t),t*0.23246067325 ls 4, '-' w p ls 7,  '-' w p ls 7
0.0 1.0 2.9211869733608857 #G#
e
-1.0 0.0 4.016632088371217 #E#
e

1 个答案:

答案 0 :(得分:2)

变量t用于2D图。对于3d绘图(splot),请改用uv

您似乎只需要u,因此我删除了您的" [t=-1.5*pi:6*pi]"并在输入set urange [-1.5*pi:6*pi]命令之前将其替换为splot

(你只指定了一个螺旋线,所以我稍微缩放了第一个螺旋线以生成第二个螺旋线。而set termoption dashlength 2对我来说不起作用,所以我将其移除了。)

reset
clear
set parametric
unset key
unset tics
unset border

set object rectangle from screen 0,0 to screen 1,1 behind fillcolor rgb 'white' fillstyle solid noborder

set style line 4 lc rgb 'black' pt 7
set style line 7 lc rgb 'royalblue' pt 7 ps 10

set urange [-1.5*pi:6*pi]

splot sin(u), cos(u), u*0.23246067325 ls 4 ,\
      0.8*sin(u), 0.8*cos(u), u*0.23246067325 ls 1 ,\
      '-' w p ls 7,  \
      '-' w p ls 7
0.0 1.0 2.9211869733608857 #G#
e
-1.0 0.0 4.016632088371217 #E#
e

这会生成以下输出:

enter image description here