### 3.2.4 4-d graph.

`plotfunc` represents a complex expression `E`
(such that `re(E)` is not identically 0 on the discretisation mesh)
by the surface `z=abs(E)` where `arg(E)` defines the color
from the rainbow. This gives an easy way to
see the points having the same argument.
Note that if `re(E)==0` on the discretisation mesh,
it is the surface `z=E/i` that is represented with rainbow colors
(cf 3.2.3).

The first argument of `plotfunc` is `E`,
the remaining arguments are the same
as for a real 3-d graph (cf 3.2.2).
Input :

`plotfunc((x+i*y)``^`

`2,[x,y])`

Output :

`A graph 3D of z=abs((x+i*y)``^`

`2 with the same color for
points having the same argument`

Input :

`plotfunc((x+i*y)``^`

`2x,[x,y], display=filled)`

Output :

`The same surface but filled`

We may specify the range of variation of *x* and *y* and the number of
discretisation points, input :

`plotfunc((x+i*y)``^`

`2,[x=-1..1,y=-2..2], nstep=900,display=filled)`

Output :

`The specified part of the surface with `*x*` between -1 and 1, `*y*` between -2 and 2 and with 900 points`