gnuplot allows us to define surfaces parametrically, which allows us to plot complex and possibly self-intersecting shapes.
The previous figure shows a surface that slices through itself in 3D.
Following is the script for the previous figure:
set param set iso 50 set ztics .5 set xtics .4 set ytics .4 set urange [-pi:pi] set vrange [-pi:pi] set hidd splot cos(u)*cos(v), sin(u)*cos(v), sin(u)
As in the previous recipe, we provide the x, y, and z components, but the provision of components that depend on both parameters (u and v) defines a surface rather than merely a path through the 3D space. ...