plots - Maple Programming Help

Online Help

All Products    Maple    MapleSim

Home : Support : Online Help : Graphics : Packages : plots : plots/implicitplot3d





three-dimensional implicit plotting


Calling Sequence




Calling Sequence

implicitplot3d(expr, x=a..b, y=c..d, z=p..q, options)

implicitplot3d(f, a..b, c..d, p..q, options)




equation containing expressions in x, y, and z



equation containing procedures or operators

a, b, c, d, p, q


real constants



(optional) plot options; see plot3d/options



The implicitplot3d command computes the three-dimensional plot of an implicitly defined surface.  It uses an numerical algorithm based on triangulation into tetrahedrons combined with simple interpolation. No symbolic computation is done. By default, the surface is given in Cartesian coordinates.


In the first call, implicitplot3d(expr, x=a..b, y=c..d, z=p..q), the equation expr must have components that are expressions in the names x, y, and z. The expr parameter can also be an expression instead of an equation, in which case the equation expr = 0 is plotted.  The ranges a..b, c..d, and p..q must evaluate to real constants.


In the second call, implicitplot3d(f, a..b, c..d, p..q), the assumption is made that the equation f consists only of procedures or operators taking no more than three arguments. The f parameter can also be a procedure or operator instead of an equation, in which case the equation f = 0 is plotted.  Operator notation must be used, that is, the procedure name is given without parameters specified, and the ranges must be given simply in the form a..b, c..d, and p..q rather than as equations.


Because the implicitplot3d command samples the function being plotted and builds the final image from the sample, it does not detect discontinuities in the function.  Instead, the function is interpolated across the discontinuities.


Any additional arguments are interpreted as options which are specified as equations of the form option = value. For example, the option grid = [m, n, r] where m, n, and r are positive integers specifies that the plot is a surface to be constructed on an m by n by r grid at equally spaced points in the ranges a..b, c..d, and p..q respectively.  By default a 10 by 10 by 10 grid is used. In contrast, the numpoints = k option controls the total number of points, so the grid will have approximately rootk,3 points in each direction.  The remaining options are the same as those used in plot3d.  For more information, see plot3d/options. The gridstyle option is not available for implicitplot3d.


If expr or f is a set or list, then its members are plotted together.  If it is a list, then particular option values can also be given as lists, with elements corresponding to elements of expr or f.  The options that can take lists as values are: color, coords, linestyle, numpoints, shading, style, symbol, symbolsize, thickness, and transparency.


The result of a call to implicitplot3d is a PLOT3D data structure containing enough information to render the plot. You can assign a PLOT3D value to a variable, save it in a file, then read it back in for redisplay. For more information, see plot3d[structure].



Plot a sphere x2+y2+z2=5.

implicitplot3dx2+y2+z2=5,x=5..5,y=5..5,z=5..5,style=surface,color=Niagara Azure

You can plot surfaces using different coordinate systems.



Use the operator form of the command.

p:= proc(x, y, z) if x^2<y then x^2+y^2 else x-y end if end proc:


Use a set or a list to combine plots.



The command to create the plot from the Plotting Guide is


See Also





Download Help Document

Was this information helpful?

Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam