ParametricPlot

ParametricPlot[{fx,fy},{u,umin,umax}]

generates a parametric plot of a curve with x and y coordinates fx and fy as a function of u.

ParametricPlot[{{fx,fy},{gx,gy},},{u,umin,umax}]

plots several parametric curves.

ParametricPlot[{fx,fy},{u,umin,umax},{v,vmin,vmax}]

plots a parametric region.

ParametricPlot[{{fx,fy},{gx,gy},},{u,umin,umax},{v,vmin,vmax}]

plots several parametric regions.

ParametricPlot[{,w[{fx,fy}],},]

plots the curve {fx,fy} with features defined by the symbolic wrapper w.

ParametricPlot[,{u,v}reg]

takes parameters {u,v} to be in the geometric region reg.

Details and Options

Examples

open allclose all

Basic Examples  (4)

Plot a parametric curve:

Plot a parametric region:

Plot several parametric curves with a legend:

Plot overlapping regions:

Scope  (29)

Sampling  (9)

More points are sampled when the function changes quickly:

The plot range is selected automatically:

Ranges where the function becomes nonreal are excluded:

The curve is split when there are discontinuities in the function:

Use PlotPoints and MaxRecursion to control adaptive sampling:

Use PlotRange to focus in on areas of interest:

Use Exclusions to remove points or split the resulting curve:

The domain of the parameters may be specified by a region:

For two parameters:

The domain of the parameters may be specified by a MeshRegion:

Labeling and Legending  (10)

Use Callout to add the expressions as a label:

Use any text as a label:

Label a region:

Place the label along the curve:

Place the label at a scaled position:

Place the labels relative to the inside of the curve:

Place the labels relative to the outside of the curve:

Place the label inside a region:

Label the curve with PlotLabels:

Label multiple curves:

Use a scaled position:

Specify the text position relative to the point:

Specify the label at {x,y} position:

Place the label outside of a region:

Include legends for each curve:

Include legends for each region:

Use Legended to provide a legend for a specific curve:

Use Placed to change the legend location:

Presentation  (10)

Multiple curves and regions are automatically colored to be distinct:

Identify curves and regions with legends:

Add labels to the curves:

Provide explicit styling to different curves and regions:

Add labels:

Provide an interactive Tooltip for each curve or region:

Create an overlay mesh:

Style the areas between mesh levels:

Color by parameter values:

Use a plot theme:

Options  (83)

AspectRatio  (2)

By default, AspectRatio comes from PlotRange:

Set a different AspectRatio:

Axes  (1)

Draw no axes:

AxesLabel  (1)

Specify labels for the and axes:

AxesOrigin  (2)

Determine where the axes cross automatically:

Specify the axes origin at the point {0,0}:

BoundaryStyle  (3)

Use a red boundary around the edges of the surface:

BoundaryStyle applies to regions cut by RegionFunction:

BoundaryStyle does not apply to holes cut by Exclusions:

ColorFunction  (5)

Color the curve by scaled , , or values:

Color by scaled and parameter values:

Use a named color gradient:

ColorFunction has higher priority than PlotStyle:

Use red for the parameter :

ColorFunctionScaling  (2)

Color the curve by angle:

Color the region by angle and vary opacity across the region:

EvaluationMonitor  (3)

Find the list of parameter values evaluated:

Find the parametric coordinate values:

Count how many times the function is evaluated:

Exclusions  (5)

Automatically determine exclusions:

Specify exclusions using equations:

Exclude a fixed set of points:

Use no exclusions:

Exclude an equation and the automatically chosen points:

ExclusionsStyle  (3)

Specify explicit styling for lines joining exclusion points:

Provide styling for both exclusion points and the lines joining them:

Draw red lines where the region is cut by excluded curves:

LabelingSize  (2)

Textual labels are shown at their actual sizes:

Specify the size of the text:

Image labels are resized to fit in the plot:

Specify the labeling size:

MaxRecursion  (2)

Each level of MaxRecursion will adaptively subdivide the initial mesh into a finer mesh:

Subdivision for parametric regions:

Mesh  (5)

Show the initial and final sampling meshes:

Use 10 mesh levels evenly spaced in the parameter directions:

Use a different number of mesh lines in different directions:

Use an explicit list of values for the mesh in the parameter and no mesh in the parameter:

Use explicit value and style for the mesh:

MeshFunctions  (3)

Use a mesh evenly spaced in the , , and directions:

Use a mesh evenly spaced in the , , , and directions:

Show 5 mesh levels in the direction (red) and 10 in the direction (blue):

MeshShading  (7)

Alternate red and blue arcs in the direction:

Use None to remove segments:

MeshShading can be used with PlotStyle:

MeshShading has higher priority than PlotStyle for styling:

Use PlotStyle for some segments by setting MeshShading to Automatic:

MeshShading can be used with ColorFunction:

Fill between regions defined by multiple mesh functions:

MeshStyle  (4)

Automatically choose the mesh style:

Use a red mesh in the direction:

Use a red mesh in the direction and a blue mesh in the direction:

Use big red mesh levels in the direction:

PerformanceGoal  (2)

Generate a higher-quality plot:

Emphasize performance, possibly at the cost of quality:

PlotLabels  (6)

Specify the text to label the curves:

Place the labels above the curves:

Place the labels differently for each curve:

PlotLabels->"Expressions" uses functions as curve labels:

Use callouts to identify the curves:

Put labels relative to the outside of the curves:

Use None to not add a label:

PlotLegends  (7)

No legends are used by default:

Create a legend based on the functions:

Create a legend with placeholder text:

Create a legend with specific labels:

PlotLegends picks up PlotStyle values automatically:

Use Placed to position legends:

Place legends inside:

Use LineLegend to modify the appearance of the legend:

PlotPoints  (2)

Use more initial points to get a smoother plot:

Use fewer plot points in directions that do not change much:

PlotRange  (2)

Show the plot where and :

With the natural range of values, the fine detail around the origin is not visible:

Use PlotRange to focus in on areas of interest:

PlotStyle  (4)

Use different style directives:

By default different styles are chosen for multiple curves and regions:

Explicitly specify the style for different curves and regions:

PlotStyle can be combined with ColorFunction:

PlotTheme  (2)

Use a theme with simple ticks and grid lines in a bright color scheme:

Change the color scheme:

RegionFunction  (1)

Show the plot where :

TextureCoordinateFunction  (4)

Textures use scaled and parameters by default:

Use the and coordinates:

Use unscaled coordinates:

Use textures to highlight how parameters map onto a surface:

TextureCoordinateScaling  (1)

Use scaled or unscaled coordinates for textures:

WorkingPrecision  (2)

Evaluate functions using machine-precision arithmetic:

Evaluate functions using arbitrary-precision arithmetic:

Applications  (9)

Simple parametric curves including a line:

Circle:

Ellipse:

Circle segment:

Ellipse segment:

Simple parametric regions including a rectangle:

Disk:

Ellipse:

Disk sector:

Disk annulus:

Disk sector annulus:

Rotated ellipses:

Plot a whole family of rotated ellipses:

Different parametrizations of circles:

This rational parametrization is for :

Plot Lissajous curves:

Plot a Nyquist curve:

Make a phase space plot of a solution to the LotkaVolterra predator-prey equations:

Plot complex mappings:

A Joukowski map:

Model a two-link planar robot:

Plot the range of motion of the end effector for and :

Properties & Relations  (7)

Plot is a special case of ParametricPlot for curves:

PolarPlot is a special case of ParametricPlot for curves:

Use ListPlot and ListLinePlot for data:

Use ContourPlot and RegionPlot for implicit curves and regions:

Use LogPlot, LogLinearPlot, and LogLogPlot for logarithmic plots:

Use Plot3D and ParametricPlot3D for function and parametric surfaces:

Use RevolutionPlot3D and SphericalPlot3D for cylindrical and spherical coordinates:

Possible Issues  (1)

By default, the argument is not evaluated and is styled as one composite function:

Use Evaluate to get an explicit list of curves:

Neat Examples  (1)

Forced undersampling:

Introduced in 1988
 (1.0)
 |
Updated in 2007
 (6.0)
2010
 (8.0)
2012
 (9.0)
2014
 (10.0)
2019
 (12.0)