title: How to rotate tick labels in polar matplotlib plot?
body: <p>I have long identifiers and I would like to make a radial plot where ticks are all at different angles.  For example, the first tick on the right at 0 degrees should have a 0 degree angle.  The one at the top should be 90 degrees.  The one at 270 degrees on the left should be 0 degrees.  I want it to look reminiscent of a radial dendrogram.  Using <code>matplotlib 2.0.2</code> and <code>python 3.6.2</code></p>
  
  <p><strong>Is this possible in matplotlib to rotate individual tick labels or add text labels separately?</strong> </p>
  
  <h3>NOTE: I have updated the plot in response to @ImportanceOfBeingErnest below.</h3>
  
  <p>Setting <code>ax.set_rticks([])</code> distorts the plot when adding the scatter points and lines. The positions from <code>label.get_position()</code> offset the labels considerably to the right of the plot.  </p>
  
  <p><strong>Is there a way use the angle and amplitude coordinates?</strong> </p>
  
  <pre><code>import pandas as pd
  import matplotlib.pyplot as plt
  import numpy as np
  
  data = {'0-b__|ce0Ji|aaaiIi9abGc_|ti5l-baa1tcciii|irGi': 0.28774963897009614, '0-b__|ce0Ji|aaaiIi9abGc_|ti6l-baa1tcciii|irGi': 0.18366735937444964, 'allb_e__|tla1a|ali|_auc7en_|e': -0.11720263463773731, 'b__0|lp|..ii80p.e7l_|an4obln.llll0ai|': -0.021168680215561269, 'b__Ass8._ii8.c4on|Ay|mbessoxiAxa': 0.17845443978725653, 'b__Bts4o_rrtiordae|Bei|obe7rattrniBno': 0.32077066676059313, 'b__|aaa|tteiatlim_|e1rblttaaeei|e': -0.27915536613715614, 'b__|as4.|ei2.l7ov_|e0tblaaoxi|xa': 0.43309499489274772, 'b__|as4.|ei2.l7ov_|e9tblaaoxi|xa': 0.47835581698425556, 'b__|cu|ppripcae_|co2tbopnccpei|': -0.20330386390053184, 'b__|eoea|cccimacnuuh_|ra0obarceenbi|ba': 0.062889648127927869, 'b__|oa|ggrigoip_|nr6ybmgvoohii|i': -0.045648268817583035, 'b__|p1|ooiioi4rs_|sr5eba0otsoi|ox': -0.52544820541720971, 'b__|paa|piatgn_|hy1cboippoli|la': 0.27260399422352155, 'b__|triu|mmriumay_|eb4ebcimrttnhi|hc': 0.62680074671550845, 'b__|tru|mmriumad_|eb2obcmittisi|': 0.34780388151174668, 'etob_m__|aol2l|ooeui|_lool7r': 0.4856468599203973, 'etpb_s__|apl2l|lleni|_loll8e': 0.24430277200521291, 'ib__rCalc_hhdiorchubai|CSt|absahodrsiCsaaca': -0.13484907188897891, 'nlab___|oa1i|ssni|_iesa9': 0.13636363636363635, 'nlnb_i__|dn1t|rrnfi|_tera8ig_|e': -0.056954668733049205, 'nrfb_h__|afl3r|ssnti|_resl3yn_': 0.56102285935683849, 'o5b__l|rcoa|eecialaeprh_|as1o5bie0trrnlii|irLa': 0.53377831002782572, 'oelb_a__Aelt3_rrovi__rro|a': 0.32230284245007218, 'oelb_a__Aelt4_rrovi__rro|a': 0.16580958754534889, 'porb_i__Ctrc6c_oopci__cloa|ny|C': 0.38260364199922509, 'porb_i__Ctrc7g_rrpci__glra|ay|C': 0.51829805219964076, 'ptab_a__|hac2b|uupci|_boui3ct_|': 0.50873516255151285, 'reab_a__|aa2a|rrrhi|_axrl4ra_|': -0.47742242259871087, 'sb__o|sSac|ccnibocsctlhd_|a0dbuacmssioai|anCca': 0.42733612764608503, 'teob___|oa1b|iiti|_bnil3': -0.32684653587404461, 'uoib_i__|ia2a|bbuli|_arbi2it': -0.13636363636363635}
  Se_corr = pd.Series(data, name="correlation")
  
  
  def plot_polar(r):
      with plt.style.context("seaborn-whitegrid"):
          fig = plt.figure(figsize=(10,10))
          ax = fig.add_subplot(111, polar=True)
          ax.set_rmax(2)
  #         ax.set_rticks([])
          ticks= np.linspace(0, 360, r.index.size + 1) [:-1]
  
          ax.set_xticks(np.deg2rad(ticks))
          ax.set_xticklabels(r.index, fontsize=15,)
  
          angles = np.linspace(0,2*np.pi,len(ax.get_xticklabels()))
          angles[np.cos(angles) &lt; 0] = angles[np.cos(angles) &lt; 0] + np.pi
          angles = np.rad2deg(angles)
  
          for i, theta in enumerate(angles):
              ax.plot([theta,theta], [0,r[i]], color="black")
              ax.scatter(x=theta,y=r[i], color="black")
  
  
          labels = []
          for label, theta in zip(ax.get_xticklabels(), angles):
              x,y = label.get_position()
              lab = ax.text(x, y, label.get_text(), transform=label.get_transform(),
                            ha=label.get_ha(), va=label.get_va())
              lab.set_rotation(theta)
              labels.append(lab)
          ax.set_xticklabels([])
  
      return fig, ax 
  fig,ax = plot_polar(Se_corr)
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/NYUZz.png" rel="noreferrer"><img src="https://i.stack.imgur.com/NYUZz.png" alt="enter image description here"></a></p>