! Example of 3d surface plot. ! Author: Francois Tonneau include s3.gle include palettes.gle size 16 15 xrange -5 5 yrange -5 5 zrange -1 1 xaxisrange -6 6 yaxisrange -6 6 angles 35 25 persp 0.80 viewport 10 9 amove 3 3 set cap round join round begin origin ! Draw plot panes. set lwidth 0.03 color gray40 fill "#e0e0e0" pane B grid xB -3 3 3 grid yB -3 3 3 pane I grid xI -3 3 3 grid zI -1 0 1 pane J grid yJ -3 3 3 grid zJ -1 0 1 ! Add axis labels. set color black font ss hei 0.4 set just cr label XB -3 0.5 "-3" label XB 0 0.5 0 label XB 3 0.5 "+3" set just cc label YB -3 0.5 "-3" label YB 0 0.5 0 label YB 3 0.5 "+3" set just rc label JX -1 0.3 "-1.0" label JX 0 0.3 " 0.0" label JX 1 0.3 "+1.0" ! Add axis titles. set hei 0.5 label XB -0.2 1.7 "X" label YB -0.1 1.7 "Y" label JX 0.2 1.4 "Z" ! Proceed to plot. sub hat x y return sin(sqrt(x*x + y*y)) end sub sub fillpalette z return viridis((z + 1)/2) end sub sub linepalette z return "#222222" end sub set lwidth 0.02 s3funcsurf hat fillpalette linepalette 50 50 end origin