Products
  • Wolfram|One

    The definitive Wolfram Language and notebook experience

  • Mathematica

    The original technical computing environment

  • Notebook Assistant + LLM Kit

    All-in-one AI assistance for your Wolfram experience

  • Compute Services
  • System Modeler
  • Finance Platform
  • Wolfram|Alpha Notebook Edition
  • Application Server
  • Enterprise Private Cloud
  • Wolfram Engine
  • Wolfram Player
  • Wolfram Cloud App
  • Wolfram Player App

More mobile apps

Core Technologies of Wolfram Products

  • Wolfram Language
  • Computable Data
  • Wolfram Notebooks
  • AI & Linguistic Understanding

Deployment Options

  • Wolfram Cloud
  • wolframscript
  • Wolfram Engine Community Edition
  • Wolfram LLM API
  • WSTPServer
  • Wolfram|Alpha APIs

From the Community

  • Function Repository
  • Community Paclet Repository
  • Example Repository
  • Neural Net Repository
  • Prompt Repository
  • Wolfram Demonstrations
  • Data Repository
  • Group & Organizational Licensing
  • All Products
Consulting & Solutions

We deliver solutions for the AI era—combining symbolic computation, data-driven insights and deep technical expertise

  • Data & Computational Intelligence
  • Model-Based Design
  • Algorithm Development
  • Wolfram|Alpha for Business
  • Blockchain Technology
  • Education Technology
  • Quantum Computation

Wolfram Consulting

Wolfram Solutions

  • Data Science
  • Artificial Intelligence
  • Biosciences
  • Healthcare Intelligence
  • Sustainable Energy
  • Control Systems
  • Enterprise Wolfram|Alpha
  • Blockchain Labs

More Wolfram Solutions

Wolfram Solutions For Education

  • Research Universities
  • Colleges & Teaching Universities
  • Junior & Community Colleges
  • High Schools
  • Educational Technology
  • Computer-Based Math

More Solutions for Education

  • Contact Us
Learning & Support

Get Started

  • Wolfram Language Introduction
  • Fast Intro for Programmers
  • Fast Intro for Math Students
  • Wolfram Language Documentation

More Learning

  • Highlighted Core Areas
  • Demonstrations
  • YouTube
  • Daily Study Groups
  • Wolfram Schools and Programs
  • Books

Grow Your Skills

  • Wolfram U

    Courses in computing, science, life and more

  • Community

    Learn, solve problems and share ideas.

  • Blog

    News, views and insights from Wolfram

  • Resources for

    Software Developers

Tech Support

  • Contact Us
  • Support FAQs
  • Support FAQs
  • Contact Us
Company
  • About Wolfram
  • Career Center
  • All Sites & Resources
  • Connect & Follow
  • Contact Us

Work with Us

  • Student Ambassador Initiative
  • Wolfram for Startups
  • Student Opportunities
  • Jobs Using Wolfram Language

Educational Programs for Adults

  • Summer School
  • Winter School

Educational Programs for Youth

  • Middle School Camp
  • High School Research Program
  • Computational Adventures

Read

  • Stephen Wolfram's Writings
  • Wolfram Blog
  • Wolfram Tech | Books
  • Wolfram Media
  • Complex Systems

Educational Resources

  • Wolfram MathWorld
  • Wolfram in STEM/STEAM
  • Wolfram Challenges
  • Wolfram Problem Generator

Wolfram Initiatives

  • Wolfram Science
  • Wolfram Foundation
  • History of Mathematics Project

Events

  • Stephen Wolfram Livestreams
  • Online & In-Person Events
  • Contact Us
  • Connect & Follow
Wolfram|Alpha
  • Your Account
  • User Portal
  • Wolfram Cloud
  • Products
    • Wolfram|One
    • Mathematica
    • Notebook Assistant + LLM Kit
    • Compute Services
    • System Modeler
    • Finance Platform
    • Wolfram|Alpha Notebook Edition
    • Application Server
    • Enterprise Private Cloud
    • Wolfram Engine
    • Wolfram Player
    • Wolfram Cloud App
    • Wolfram Player App

    More mobile apps

    • Core Technologies
      • Wolfram Language
      • Computable Data
      • Wolfram Notebooks
      • AI & Linguistic Understanding
    • Deployment Options
      • Wolfram Cloud
      • wolframscript
      • Wolfram Engine Community Edition
      • Wolfram LLM API
      • WSTPServer
      • Wolfram|Alpha APIs
    • From the Community
      • Function Repository
      • Community Paclet Repository
      • Example Repository
      • Neural Net Repository
      • Prompt Repository
      • Wolfram Demonstrations
      • Data Repository
    • Group & Organizational Licensing
    • All Products
  • Consulting & Solutions

    We deliver solutions for the AI era—combining symbolic computation, data-driven insights and deep technical expertise

    WolframConsulting.com

    Wolfram Solutions

    • Data Science
    • Artificial Intelligence
    • Biosciences
    • Healthcare Intelligence
    • Sustainable Energy
    • Control Systems
    • Enterprise Wolfram|Alpha
    • Blockchain Labs

    More Wolfram Solutions

    Wolfram Solutions For Education

    • Research Universities
    • Colleges & Teaching Universities
    • Junior & Community Colleges
    • High Schools
    • Educational Technology
    • Computer-Based Math

    More Solutions for Education

    • Contact Us
  • Learning & Support

    Get Started

    • Wolfram Language Introduction
    • Fast Intro for Programmers
    • Fast Intro for Math Students
    • Wolfram Language Documentation

    Grow Your Skills

    • Wolfram U

      Courses in computing, science, life and more

    • Community

      Learn, solve problems and share ideas.

    • Blog

      News, views and insights from Wolfram

    • Resources for

      Software Developers
    • Tech Support
      • Contact Us
      • Support FAQs
    • More Learning
      • Highlighted Core Areas
      • Demonstrations
      • YouTube
      • Daily Study Groups
      • Wolfram Schools and Programs
      • Books
    • Support FAQs
    • Contact Us
  • Company
    • About Wolfram
    • Career Center
    • All Sites & Resources
    • Connect & Follow
    • Contact Us

    Work with Us

    • Student Ambassador Initiative
    • Wolfram for Startups
    • Student Opportunities
    • Jobs Using Wolfram Language

    Educational Programs for Adults

    • Summer School
    • Winter School

    Educational Programs for Youth

    • Middle School Camp
    • High School Research Program
    • Computational Adventures

    Read

    • Stephen Wolfram's Writings
    • Wolfram Blog
    • Wolfram Tech | Books
    • Wolfram Media
    • Complex Systems
    • Educational Resources
      • Wolfram MathWorld
      • Wolfram in STEM/STEAM
      • Wolfram Challenges
      • Wolfram Problem Generator
    • Wolfram Initiatives
      • Wolfram Science
      • Wolfram Foundation
      • History of Mathematics Project
    • Events
      • Stephen Wolfram Livestreams
      • Online & In-Person Events
    • Contact Us
    • Connect & Follow
  • Wolfram|Alpha
  • Wolfram Cloud
  • Your Account
  • User Portal
Wolfram Language & System Documentation Center
PolarPlot
  • See Also
    • ListPolarPlot
    • ParametricPlot
    • RevolutionPlot3D
    • SphericalPlot3D
    • PieChart
    • SectorChart
    • RadialAxisPlot
  • Related Guides
    • Function Visualization
    • Angles and Polar Coordinates
  • Tech Notes
    • Some Special Plots
    • See Also
      • ListPolarPlot
      • ParametricPlot
      • RevolutionPlot3D
      • SphericalPlot3D
      • PieChart
      • SectorChart
      • RadialAxisPlot
    • Related Guides
      • Function Visualization
      • Angles and Polar Coordinates
    • Tech Notes
      • Some Special Plots

PolarPlot[r,{θ,θmin,θmax}]

generates a polar plot of a curve with radius r as a function of angle θ.

PolarPlot[{r1,r2,…},{θ,θmin,θmax}]

makes a polar plot of curves with radius functions r1, r2, ….

Details and Options
Details and Options Details and Options
Examples  
Basic Examples  
Scope  
Sampling  
Labeling and Legending  
Presentation  
Options  
AspectRatio  
Axes  
AxesLabel  
Show More Show More
AxesOrigin  
AxesStyle  
ColorFunction  
ColorFunctionScaling  
EvaluationMonitor  
Exclusions  
ExclusionsStyle  
Frame  
FrameLabel  
FrameStyle  
FrameTicks  
FrameTicksStyle  
ImageSize  
LabelingSize  
MaxRecursion  
Mesh  
MeshFunctions  
MeshShading  
MeshStyle  
PerformanceGoal  
PlotLabels  
PlotLegends  
PlotPoints  
PlotRange  
PlotStyle  
PlotTheme  
PolarAxes  
PolarAxesOrigin  
PolarGridLines  
PolarTicks  
RegionFunction  
ScalingFunctions  
Ticks  
TicksStyle  
WorkingPrecision  
Applications  
Properties & Relations  
Neat Examples  
See Also
Tech Notes
Related Guides
History
Cite this Page
BUILT-IN SYMBOL
  • See Also
    • ListPolarPlot
    • ParametricPlot
    • RevolutionPlot3D
    • SphericalPlot3D
    • PieChart
    • SectorChart
    • RadialAxisPlot
  • Related Guides
    • Function Visualization
    • Angles and Polar Coordinates
  • Tech Notes
    • Some Special Plots
    • See Also
      • ListPolarPlot
      • ParametricPlot
      • RevolutionPlot3D
      • SphericalPlot3D
      • PieChart
      • SectorChart
      • RadialAxisPlot
    • Related Guides
      • Function Visualization
      • Angles and Polar Coordinates
    • Tech Notes
      • Some Special Plots

PolarPlot

PolarPlot[r,{θ,θmin,θmax}]

generates a polar plot of a curve with radius r as a function of angle θ.

PolarPlot[{r1,r2,…},{θ,θmin,θmax}]

makes a polar plot of curves with radius functions r1, r2, ….

Details and Options

  • The angle theta is measured in radians, counterclockwise from the positive axis.
  • The , position corresponding to , is , . The value of need not be between and .
  • PolarPlot treats the variable theta as local, effectively using Block.
  • PolarPlot has attribute HoldAll and evaluates functions only after assigning specific numerical values to theta.
  • In some cases, it may be more efficient to use Evaluate to evaluate functions symbolically before specific numerical values are assigned to theta.
  • No curve is drawn in any region where a function evaluates to None.
  • The following wrappers w can be used for r:
  • Annotation[r,label]provide an annotation for r
    Button[r,action]evaluate action when the curve for r is clicked
    Callout[r,label]label the function with a callout
    Callout[r,label,pos]place the callout at relative position pos
    EventHandler[r,events]define a general event handler for r
    Hyperlink[r,uri]make the function a hyperlink
    Labeled[r,label]label the function
    Labeled[r,label,pos]place the label at relative position pos
    Legended[r,label]identify the function in a legend
    PopupWindow[r,cont]attach a popup window to the function
    StatusArea[r,label]display in the status area on mouseover
    Style[r,styles]show the function using the specified styles
    Tooltip[r,label]attach a tooltip to the function
    Tooltip[r]use functions as tooltips
  • Wrappers w can be applied at multiple levels:
  • w[r]wrap r
    w[{r1,r2,…}]wrap a collection of curves
    w1[w2[…]]use nested wrappers
  • Callout, Labeled and Placed can use the following positions pos:
  • Automaticautomatically placed labels
    Above, Below, Before, Afterpositions around the curve
    unear the curve at parameter u
    {x,y}position near {x,y}
    Scaled[s]scaled position s along the curve
    {s,Above},{s,Below},…relative position at position s along the curve
    {pos,epos}epos in label placed at relative position pos of the curve
  • PolarPlot has the same options as Graphics, with the following additions and changes: [List of all options]
  • Axes Truewhether to draw axes
    AxesOrigin {0,0}the origin where axes cross
    ColorFunction Automatichow to determine the coloring of curves
    ColorFunctionScaling Truewhether to scale arguments to ColorFunction
    EvaluationMonitor Noneexpression to evaluate at every function evaluation
    Exclusions Automaticpoints in to exclude
    ExclusionsStyle Nonewhat to draw at excluded points
    LabelingSize Automaticmaximum size of callouts and labels
    MaxRecursion Automaticthe maximum number of recursive subdivisions allowed
    Mesh Nonehow many mesh points to draw on each curve
    MeshFunctions {#3&}how to determine the placement of mesh points
    MeshShading Nonehow to shade regions between mesh points
    MeshStyle Automaticthe style for mesh points
    MethodAutomaticthe method to use for refining curves
    PerformanceGoal $PerformanceGoalaspects of performance to try to optimize
    PlotLabels Nonelabels to use for curves
    PlotLegends Nonelegends for curves
    PlotPoints Automaticinitial number of sample points
    PlotRange Automaticthe range of values to include
    PlotRangeClippingTruewhether to clip at the plot range
    PlotStyle Automaticgraphics directives to specify the style for each curve
    PlotTheme $PlotThemeoverall theme for the plot
    PolarAxes Falsewhether to draw polar axes
    PolarAxesOrigin Automaticwhere to draw polar axes
    PolarGridLines Nonepolar gridlines to draw
    PolarTicks Automaticpolar axes ticks
    RegionFunction (True&)how to determine whether a point should be included
    ScalingFunctions Nonehow to scale individual coordinates
    WorkingPrecision MachinePrecisionthe precision used in internal computations
  • Typical settings for PlotLegends include:
  • Noneno legend
    Automaticautomatically determine legend
    "Expressions"use r1, r2, … as legend labels
    {lbl1,lbl2,…}use lbl1, lbl2, … as legend labels
    Placed[lspec,…]specify placement for legend
  • ColorData["DefaultPlotColors"] gives the default sequence of colors used by PlotStyle.
  • PolarPlot initially evaluates functions at a number of equally spaced sample points specified by PlotPoints. Then it uses an adaptive algorithm to choose additional sample points, subdividing a given interval at most MaxRecursion times.
  • You should realize that with the finite number of sample points used, it is possible for PolarPlot to miss features in your function. To check your results, you should try increasing the settings for PlotPoints and MaxRecursion.
  • On[PolarPlot::accbend] makes PolarPlot print a message if it is unable to reach a certain smoothness of curve.
  • With Mesh->All, PolarPlot will explicitly draw a point at every position on each curve where each function was sampled.
  • The arguments supplied to functions in MeshFunctions and RegionFunction are x, y, θ, r. Functions in ColorFunction are by default supplied with scaled versions of these arguments.
  • The functions are evaluated all along each curve.
  • With the default settings Exclusions->Automatic and ExclusionsStyle->None, PolarPlot breaks curves at discontinuities it detects. Exclusions->None joins across discontinuities.
  • PolarPlot normally returns Graphics[{Line[…],…}].
  • Possible settings for ScalingFunctions include:
  • srscale the r axis
    {sx,sy,sθ,sr}scale x, y, θ and r
  • Common built-in scaling functions s include:
  • "Log"log scale with automatic tick labeling
    "Log10"base-10 log scale with powers of 10 for ticks
    "SignedLog"log-like scale that includes 0 and negative numbers
    "Reverse"reverse the coordinate direction
  • Scaling θ affects how the plot is sampled, but not the overall appearance of the plot.
  • In general, you cannot scale both x or y and r simultaneously.
  • List of all options

    • AlignmentPointCenterthe default point in the graphic to align with
      AspectRatioAutomaticratio of height to width
      AxesTruewhether to draw axes
      AxesLabelNoneaxes labels
      AxesOrigin{0,0}the origin where axes cross
      AxesStyle{}style specifications for the axes
      BackgroundNonebackground color for the plot
      BaselinePositionAutomatichow to align with a surrounding text baseline
      BaseStyle{}base style specifications for the graphic
      ColorFunctionAutomatichow to determine the coloring of curves
      ColorFunctionScalingTruewhether to scale arguments to ColorFunction
      ContentSelectableAutomaticwhether to allow contents to be selected
      CoordinatesToolOptionsAutomaticdetailed behavior of the coordinates tool
      Epilog{}primitives rendered after the main plot
      EvaluationMonitorNoneexpression to evaluate at every function evaluation
      ExclusionsAutomaticpoints in to exclude
      ExclusionsStyleNonewhat to draw at excluded points
      FormatTypeTraditionalFormthe default format type for text
      FrameFalsewhether to put a frame around the plot
      FrameLabelNoneframe labels
      FrameStyle{}style specifications for the frame
      FrameTicksAutomaticframe ticks
      FrameTicksStyle{}style specifications for frame ticks
      GridLinesNonegrid lines to draw
      GridLinesStyle{}style specifications for grid lines
      ImageMargins0.the margins to leave around the graphic
      ImagePaddingAllwhat extra padding to allow for labels etc.
      ImageSizeAutomaticthe absolute size at which to render the graphic
      LabelingSizeAutomaticmaximum size of callouts and labels
      LabelStyle{}style specifications for labels
      MaxRecursionAutomaticthe maximum number of recursive subdivisions allowed
      MeshNonehow many mesh points to draw on each curve
      MeshFunctions{#3&}how to determine the placement of mesh points
      MeshShadingNonehow to shade regions between mesh points
      MeshStyleAutomaticthe style for mesh points
      MethodAutomaticthe method to use for refining curves
      PerformanceGoal$PerformanceGoalaspects of performance to try to optimize
      PlotLabelNonean overall label for the plot
      PlotLabelsNonelabels to use for curves
      PlotLegendsNonelegends for curves
      PlotPointsAutomaticinitial number of sample points
      PlotRangeAutomaticthe range of values to include
      PlotRangeClippingTruewhether to clip at the plot range
      PlotRangePaddingAutomatichow much to pad the range of values
      PlotRegionAutomaticthe final display region to be filled
      PlotStyleAutomaticgraphics directives to specify the style for each curve
      PlotTheme$PlotThemeoverall theme for the plot
      PolarAxesFalsewhether to draw polar axes
      PolarAxesOriginAutomaticwhere to draw polar axes
      PolarGridLinesNonepolar gridlines to draw
      PolarTicksAutomaticpolar axes ticks
      PreserveImageOptionsAutomaticwhether to preserve image options when displaying new versions of the same graphic
      Prolog{}primitives rendered before the main plot
      RegionFunction(True&)how to determine whether a point should be included
      RotateLabelTruewhether to rotate y labels on the frame
      ScalingFunctionsNonehow to scale individual coordinates
      TicksAutomaticaxes ticks
      TicksStyle{}style specifications for axes ticks
      WorkingPrecisionMachinePrecisionthe precision used in internal computations

Examples

open all close all

Basic Examples  (3)

Make a polar plot:

Make several polar plots:

Style the curves:

Scope  (23)

Sampling  (6)

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:

Labeling and Legending  (7)

Use Callout to add the expressions as a label:

Use any text as a label:

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:

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:

Presentation  (10)

Multiple curves are automatically colored to be distinct:

Provide explicit styling to different curves and regions:

Add labels:

Provide an interactive Tooltip for each curve:

Create an overlay mesh:

Style the areas between mesh levels:

Color by parameter values:

Legend multiple curves:

Use a theme with dark background and high-contrast colors:

Use a theme with minimal styling:

Use a log scale on the radial components of a polar plot:

Scale only the x direction:

Options  (134)

AspectRatio  (3)

By default, the ratio of the height to width for the plot is determined automatically:

Make the height the same as the width with AspectRatio1:

AspectRatioFull adjusts the height and width to tightly fit inside other constructs:

Axes  (4)

By default, axes are drawn:

Use AxesFalse to turn off axes:

Use AxesOrigin to specify where the axes intersect:

Turn each axis on individually:

AxesLabel  (3)

No axes labels are drawn by default:

Place a label on the axis:

Specify axes labels:

AxesOrigin  (2)

The position of the axes is determined automatically:

Specify an explicit origin for the axes:

AxesStyle  (4)

Change the style for the axes:

Specify the style of each axis:

Use different styles for the ticks and the axes:

Use different styles for the labels and the axes:

ColorFunction  (4)

Color the curve by scaled , , , or value:

Use a named color gradient:

ColorFunction has higher priority than PlotStyle:

Use red for the parameter :

ColorFunctionScaling  (1)

Color the curve by angle:

EvaluationMonitor  (3)

Find the list of parameter values evaluated:

Find the coordinate values:

Count how many times the function is evaluated:

Exclusions  (3)

Automatically determine exclusions:

Provide an explicit list of points for exclusions:

Specify exclusions using equations:

ExclusionsStyle  (2)

Specify explicit styling for lines joining exclusion points:

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

Frame  (4)

PolarPlot does not use a frame by default:

Use FrameTrue to turn on the frame:

Draw a frame on the left and right edges:

Draw a frame on the left and bottom edges:

FrameLabel  (3)

Place a label along the bottom frame of a plot:

Place labels on the bottom and left frame edges:

Place labels on each of the edges in the frame:

FrameStyle  (2)

Specify the style of the frame:

Specify style for each frame edge:

FrameTicks  (8)

Frame ticks are placed automatically by default:

Use a frame with no ticks:

Use frame ticks on the bottom edge:

By default, the top and right edges have tick marks but no tick labels:

Use All to include tick labels on all edges:

Place tick marks at specific positions:

Draw frame tick marks at the specified positions with specific labels:

Specify the lengths for tick marks as a fraction of the graphics size:

Use different sizes in the positive and negative directions for each tick mark:

Specify a style for each frame tick:

FrameTicksStyle  (3)

By default, the frame ticks and frame tick labels use the same styles as the frame:

Specify an overall style for the ticks, including the labels:

Use different styles for the different frame edges:

ImageSize  (7)

Use named sizes such as Tiny, Small, Medium and Large:

Specify the width of the plot:

Specify the height of the plot:

Allow the width and height to be up to a certain size:

Specify the width and height for a graphic, padding with space if necessary:

Setting AspectRatioFull will fill the available space:

Use maximum sizes for the width and height:

Use ImageSizeFull to fill the available space in an object:

Specify the image size as a fraction of the available space:

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  (1)

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

Mesh  (4)

Show the initial and final sampling meshes:

Use 10 mesh points evenly spaced in the direction:

Use an explicit list of values for the mesh in the direction:

Use explicit value and style for the mesh:

MeshFunctions  (2)

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

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

MeshShading  (6)

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:

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)

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

Specify the text to label the curves:

Place the labels above the curves:

Place the labels differently for each curve:

Use callouts to identify the curves:

Put labels relative to the outside of the curves:

Use None to not add a label:

PlotLegends  (7)

Use the automatic legend:

No legends are used by default:

Use legends:

Show no legends:

PlotLegends automatically picks up PlotStyle option values:

Show expressions as legends in TraditionalForm:

Specify a list of labels for legends:

Place legends outside:

Place legends inside:

Legend layout changes automatically along with position:

Use LineLegend to adjust the appearance of the legend:

Specify LegendMarkers:

PlotPoints  (1)

Use more initial points to get a smoother plot:

PlotRange  (2)

Show the curve 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  (5)

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:

PlotStyle can be combined with MeshShading:

PlotTheme  (1)

Use a theme with polar grid lines and bright colors:

Add another theme with legends:

Change plot styles:

PolarAxes  (3)

Use polar axes:

Add polar grid lines:

Turn on the polar axis but not the radial axis:

PolarAxesOrigin  (2)

Reorient the polar and radial axes so that they intersect where and :

Turn off the polar ticks and move the radial axis below the plot:

PolarGridLines  (3)

Use automatic polar grid lines:

Specify particular polar grid lines and ticks:

Change the style of the specified grid lines:

PolarTicks  (3)

Use automatic polar ticks:

Change the labels for some of the ticks so the angle runs from to instead of to :

Display polar ticks in degrees and specify the radial ticks:

RegionFunction  (1)

Show the plot where :

ScalingFunctions  (8)

By default, PolarPlot uses natural scale in both axes:

Log-scaled plots will only plot intervals over which Log is defined:

Use a shifted log scale to show a function with negative values:

Use ScalingFunctions to reverse the coordinate direction in the direction:

Use a reciprocal scale in the direction:

Use a scale defined by a function and its inverse:

Use a scale for r:

Use a scale for θ; it affects how the plot is sampled, but not the overall appearance of the plot:

Ticks  (9)

Ticks are placed automatically in each plot:

Use TicksNone to draw axes without any tick marks:

Use ticks on the axis, but not the axis:

Place tick marks at specific positions:

Draw tick marks at the specified positions with specific labels:

Use specific ticks on one axis and automatic ticks on the other:

Specify the lengths for ticks as a fraction on graphics size:

Use different sizes in the positive and negative directions for each tick:

Specify a style for each tick:

Construct a function that places ticks at the midpoint and extremes of the axis:

TicksStyle  (4)

By default, the ticks and tick labels use the same styles as the axis:

Specify an overall ticks style, including the tick labels:

Specify ticks style for each of the axes:

Use a different style for the tick labels and tick marks:

WorkingPrecision  (2)

Evaluate functions using machine-precision arithmetic:

Evaluate functions using arbitrary-precision arithmetic:

Applications  (4)

Plot a circle:

A spiral:

An oscillation around a circle:

Archimedean spirals of the form :

Archimedean spirals of the form :

Logarithmic spirals have the form :

Create a Guilloché pattern [more info]:

Properties & Relations  (5)

PolarPlot is a special case of ParametricPlot for curves:

Use ListPolarPlot for data:

Use Plot3D and ParametricPlot3D for function and parametric surfaces:

Use RevolutionPlot3D and SphericalPlot3D for cylindrical and spherical coordinates:

Use ContourPlot and RegionPlot for implicit curves and regions:

Neat Examples  (2)

See Also

ListPolarPlot  ParametricPlot  RevolutionPlot3D  SphericalPlot3D  PieChart  SectorChart  RadialAxisPlot

Tech Notes

    ▪
  • Some Special Plots

Related Guides

    ▪
  • Function Visualization
  • ▪
  • Angles and Polar Coordinates

History

Introduced in 2007 (6.0) | Updated in 2008 (7.0) ▪ 2012 (9.0) ▪ 2014 (10.0) ▪ 2019 (12.0) ▪ 2022 (13.1)

Wolfram Research (2007), PolarPlot, Wolfram Language function, https://reference.wolfram.com/language/ref/PolarPlot.html (updated 2022).

Text

Wolfram Research (2007), PolarPlot, Wolfram Language function, https://reference.wolfram.com/language/ref/PolarPlot.html (updated 2022).

CMS

Wolfram Language. 2007. "PolarPlot." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/PolarPlot.html.

APA

Wolfram Language. (2007). PolarPlot. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/PolarPlot.html

BibTeX

@misc{reference.wolfram_2025_polarplot, author="Wolfram Research", title="{PolarPlot}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/PolarPlot.html}", note=[Accessed: 01-March-2026]}

BibLaTeX

@online{reference.wolfram_2025_polarplot, organization={Wolfram Research}, title={PolarPlot}, year={2022}, url={https://reference.wolfram.com/language/ref/PolarPlot.html}, note=[Accessed: 01-March-2026]}

Top
Introduction for Programmers
Introductory Book
Wolfram Function Repository | Wolfram Data Repository | Wolfram Data Drop | Wolfram Language Products
Top
  • Products
  • Wolfram|One
  • Mathematica
  • Notebook Assistant + LLM Kit
  • Compute Services
  • System Modeler

  • Wolfram|Alpha Notebook Edition
  • Wolfram|Alpha Pro
  • Mobile Apps

  • Wolfram Engine
  • Wolfram Player

  • Volume & Site Licensing
  • Server Deployment Options
  • Consulting
  • Wolfram Consulting
  • Repositories
  • Data Repository
  • Function Repository
  • Community Paclet Repository
  • Neural Net Repository
  • Prompt Repository

  • Wolfram Language Example Repository
  • Notebook Archive
  • Wolfram GitHub
  • Learning
  • Wolfram U
  • Wolfram Language Documentation
  • Webinars & Training
  • Educational Programs

  • Wolfram Language Introduction
  • Fast Introduction for Programmers
  • Fast Introduction for Math Students
  • Books

  • Wolfram Community
  • Wolfram Blog
  • Public Resources
  • Wolfram|Alpha
  • Wolfram Problem Generator
  • Wolfram Challenges

  • Computer-Based Math
  • Computational Thinking
  • Computational Adventures

  • Demonstrations Project
  • Wolfram Data Drop
  • MathWorld
  • Wolfram Science
  • Wolfram Media Publishing
  • Customer Resources
  • Store
  • Product Downloads
  • User Portal
  • Your Account
  • Organization Access

  • Support FAQ
  • Contact Support
  • Company
  • About Wolfram
  • Careers
  • Contact
  • Events
Wolfram Community Wolfram Blog
Legal & Privacy Policy
WolframAlpha.com | WolframCloud.com
© 2026 Wolfram
© 2026 Wolfram | Legal & Privacy Policy |
English