# Three-Dimensional Surface Plots

Plot3D[f,{x,x_{min},x_{max}},{y,y_{min},y_{max}}] | |

make a three-dimensional plot of f as a function of the variables x and y |

In[1]:= |

Out[1]= |

Three-dimensional graphics can be rotated in place by dragging the mouse inside the graphic. Dragging inside the graphic causes the graphic to tumble in a direction that follows the mouse, and dragging around the borders of the graphic causes the graphic to spin in the plane of the screen. Dragging the graphic while holding down the Shift key causes the graphic to pan. Use the Ctrl key to zoom.

There are many options for three-dimensional plots in *Mathematica*. Some are discussed here; others are described in "The Structure of Graphics and Sound".

The first set of options for three-dimensional plots is largely analogous to those provided in the two-dimensional case.

option name | default value | |

Axes | True | whether to include axes |

AxesLabel | None | labels to be put on the axes: zlabel specifies a label for the axis, for all axes |

BaseStyle | {} | the default style to use for the plot |

Boxed | True | whether to draw a three-dimensional box around the surface |

FaceGrids | None | how to draw grids on faces of the bounding box; All draws a grid on every face |

LabelStyle | {} | style specification for labels |

Lighting | Automatic | simulated light sources to use |

Mesh | Automatic | whether an mesh should be drawn on the surface |

PlotRange | {Full,Full,Automatic} | the range of or other values to include |

SphericalRegion | False | whether to make the circumscribing sphere fit in the final display area |

ViewAngle | All | angle of the field of view |

ViewCenter | {1,1,1}/2 | point to display at the center |

ViewPoint | {1.3,-2.4,2} | the point in space from which to look at the surface |

ViewVector | Automatic | position and direction of a simulated camera |

ViewVertical | {0,0,1} | direction to make vertical |

BoundaryStyle | Automatic | how to draw boundary lines for surfaces |

ClippingStyle | Automatic | how to draw clipped parts of surfaces |

ColorFunction | Automatic | how to determine the color of the surfaces |

Filling | None | filling under each surface |

FillingStyle | Opacity[.5] | style to use for filling |

PlotPoints | 25 | the number of points in each direction at which to sample the function; specifies different numbers in the and directions |

PlotStyle | Automatic | graphics directives for the style of each surface |

Some options for Plot3D. The first set can also be used in Show.

In[2]:= |

Out[2]= |

In[3]:= |

Out[3]= |

*Mathematica*adaptively samples the plot, adding points for large variations, but occasionally you may still need to specify a greater number of points.

In[4]:= |

Out[4]= |

In[5]:= |

Out[5]= |

Probably the single most important issue in plotting a three-dimensional surface is specifying where you want to look at the surface from. The ViewPoint option for Plot3D and Show allows you to specify the point in space from which you view a surface. The details of how the coordinates for this point are defined are discussed in "Coordinate Systems for Three-Dimensional Graphics". When rotating a graphic using the mouse, you are adjusting the ViewPoint value.

In[6]:= |

Out[6]= |

In[7]:= |

Out[7]= |

In[8]:= |

Out[8]= |

{1.3,-2.4,2} | default view point |

Front | in front, along the negative direction |

Back | in back, along the positive direction |

Above | above, along the positive direction |

Below | below, along the negative direction |

Left | left, along the negative direction |

Right | right, along the positive direction |

Typical choices for the ViewPoint option.

The human visual system is not particularly good at understanding complicated mathematical surfaces. As a result, you need to generate pictures that contain as many clues as possible about the form of the surface.

View points slightly above the surface usually work best. It is generally a good idea to keep the view point close enough to the surface that there is some perspective effect. Having a box explicitly drawn around the surface is helpful in recognizing the orientation of the surface.

In[9]:= |

Out[9]= |

In[10]:= |

Out[10]= |

To add an extra element of realism to three-dimensional graphics, *Mathematica* by default colors three-dimensional surfaces using a simulated lighting model. In the default case, *Mathematica* assumes that there are four point light sources plus ambient lighting shining on the object. "Lighting and Surface Properties" describes how you can set up other light sources, and how you can specify the reflection properties of an object.

Lighting can also be specified using a string that represents a collection of lighting properties. For example, the option setting Lighting->"Neutral" uses a set of white lights, and so can be faithfully reproduced on a black and white output device such as a printer.

In[52]:= |

Out[52]= |

In[11]:= |

Out[11]= |