This is documentation for Mathematica 6, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.2)


ContourPlot3D[f, {x, xmin, xmax}, {y, ymin, ymax}, {z, zmin, zmax}]
produces a three-dimensional contour plot of f as a function of x, y and z.
ContourPlot3D[fg, {x, xmin, xmax}, {y, ymin, ymax}, {z, zmin, zmax}]
plots the contour surface for which f=g.
  • The contour surfaces plotted by ContourPlot3D can contain disconnected parts.
  • By default, ContourPlot3D shows each contour level as an opaque white surface, with normals pointing outward.
  • ContourPlot3D has attribute HoldAll, and evaluates f and g only after assigning specific numerical values to x, y and z.
  • In some cases it may be more efficient to use Evaluate to evaluate f and g symbolically before specific numerical values are assigned to x, y and z.
  • Nothing is plotted in any regions where f evaluates to None.
AxesTruewhether to draw axes
BoundaryStyleAutomatichow to draw boundaries of regions
BoxRatios{1,1,1}bounding 3D box ratios
ColorFunctionAutomatichow to color contour surfaces
ColorFunctionScalingTruewhether to scale arguments to ColorFunction
ContoursAutomatichow many or what contour surfaces to show
ContourStyleWhitethe style for contour surfaces
EvaluationMonitorNoneexpression to evaluate at every function evaluation
MaxRecursionAutomaticthe maximum number of recursive subdivisions allowed
MeshAutomatichow many mesh lines in each direction to draw
MeshFunctions{#1&,#2&,#3&}how to determine the placement of mesh divisions
MeshShadingNonehow to shade regions between mesh divisions
MeshStyleAutomaticthe style for mesh lines
MethodAutomaticthe method to use for refining contour surfaces
NormalsFunctionAutomatichow to determine effective surface normals
PerformanceGoal$PerformanceGoalaspects of performance to try to optimize
PlotPointsAutomaticthe initial number of sample points in each direction
PlotRange{Full,Full,Full,Automatic}the range of values to include
RegionFunction(True&)how to determine whether a point should be included
WorkingPrecisionMachinePrecisionthe precision used in internal computations
  • ContourPlot3D initially evaluates f at a 3D grid of equally spaced sample points specified by PlotPoints. Then it uses an adaptive algorithm to subdivide at most MaxRecursion times to generate smooth contours.
  • You should realize that since it uses only a finite number of sample points, it is possible for ContourPlot3D to miss features of your functions. To check your results, you should try increasing the settings for PlotPoints and MaxRecursion.
Plot a 3D contour surface:
Click for copyable input
Plot several contour surfaces:
Click for copyable input
Show multiple implicit surfaces, in this case unit norm surfaces:
Click for copyable input
Click for copyable input
Use styling to emphasize features:
Click for copyable input
New in 6