Back to draw-Gnuplot

'draw'-Gnuplot interface:
object elevation_grid

Once you have opened a Maxima session, load package draw:

load("draw") $

To read the documentation on object elevation_grid, write the following sentence:

describe(elevation_grid) $

Let's plot a matrix:

fpprintprec: 4$
m: apply(
    matrix,
    makelist(makelist(random(10.0),k,1,6),i,1,6)) ;

\[ \pmatrix{7.705&1.24&6.964&4.436&2.558&0.01864\cr 3.806&0.7527& 0.9899&8.668&2.724&0.8816\cr 8.917&7.391&3.716&4.948&2.708&2.051\cr 2.265&5.562&9.719&4.845&7.608&0.8649\cr 9.843&0.702&1.369&1.276& 8.361&6.159\cr 2.772&6.818&9.953&1.664&6.357&9.637\cr } \]

draw3d(
  color        = blue,
  elevation_grid(m,0,0,3,2),
  xlabel       = "x",
  ylabel       = "y",
  surface_hide = true) $
eg1

Color scalars for elevation_grid objects can be especified with respect to the \((x, y)\) coordinates:

m: apply(
      matrix,
      makelist(makelist(cos(i^2/80-k/30),k,1,30),i,1,20)) $

draw3d(
   enhanced3d = [cos(x*y*10),x,y],
   elevation_grid(m,-1,-1,2,2),
   xlabel     = "x",
   ylabel     = "y")$
eg2

Color scalars defined with respect to coordinates \((x, y, z)\):

m: apply(
      matrix,
      makelist(makelist(cos(i^2/80-k/30),k,1,30),i,1,20)) $

draw3d(
   xlabel     = "x",
   ylabel     = "y",
   enhanced3d = [-z,x,y,z],
   elevation_grid(m,-1,-1,2,2)) $
eg3

Scaling and reflecting an elevation_grid object:

m: apply(
      matrix,
      makelist(makelist(i+k^2,k,1,30),i,1,20)) $

draw3d(
   surface_hide = true,
   elevation_grid(m,0,0,3,2),
   color        = red,
   transform    = [2*u,v/2,-w,u,v,w],
   elevation_grid(m,0,0,3,2))$
eg4

© 2011-2016, TecnoStats.