Mathematica Stack Exchange is a question and answer site for users of Mathematica. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is it possible to have ListPolarPlot start plotting at the vertical axis? By Default ListPolarPlot gives this result:

ListPolarPlot[Reverse[Range[20]], PolarAxes -> True, 
 PolarTicks -> {"Degrees", Automatic}]

enter image description here

But I want it to look like this (rotated with Rotate[%,1/2pi]: enter image description here

Just rotating the graphic probably is the easiest way, but adding ticks and legends is a crime... I am hoping for a way to simply set the starting angle.

Specifying angles at each data point and adding 1/2pi does not solve my problem because the angles in the PolarAxes would be off.

share|improve this question
up vote 7 down vote accepted

Make rotate transform like this. And change some options of ListPolarPlot. I modified the PolarTicks option.

rotatePolar[a_List] := Module[{l = Length[a]},
  Table[{2 Pi*(i - 1)/l + Pi/2, a[[i]]}, {i, l}]

ListPolarPlot[rotatePolar[Reverse[Range[20]]], PolarAxes -> True,
 PolarAxesOrigin -> {Pi/2, 20},
 PolarTicks -> {Drop[
    Table[{i, Mod[i - 90 Degree, 360 Degree]}, {i, 0, 360 Degree, 
      15 Degree}], -1], Automatic}

enter image description here

share|improve this answer
Ah, the trick with the PolarTicks is very clever! :) Thanks a lot. – Aart Goossens Aug 27 '14 at 19:14

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.