Ë
    íÍ:j¿V  ã                   ór  — d dl Z d dlZd dlmZ d dlZd dlZd dlm	Z	 d dlm
Z d dlmZmZ d dlmZ  edgde j$                  dk(  rd	nd ¬
«      d„ «       Z edgdde j$                  dk(  rdnd ¬«      d„ «       Z edgd¬«      d„ «       Zd„ Z e«       d„ «       Z e«       d„ «       Z e«       d„ «       Z edgd¬«      d„ «       Z edgd¬«      d„ «       Z edgd¬«      d„ «       Z edgd¬«      d „ «       Z ed!gd¬«      d"„ «       Z ed#gd¬«      d$„ «       Z ed%gd¬«      d&„ «       Z  ed'gd¬«      d(„ «       Z! ed)gd¬«      d*„ «       Z" e«       d+„ «       Z# e«       d,„ «       Z$d-„ Z%d.„ Z&d/„ Z'd0„ Z(d1„ Z)ejT                  jW                  d2g d3¢«      d4„ «       Z,d5„ Z- e«       d6„ «       Z. e«       d7„ «       Z/d8„ Z0d9„ Z1d:„ Z2d;„ Z3 e«       d<„ «       Z4d=„ Z5d>„ Z6d?„ Z7d@„ Z8 edAgd¬«      dB„ «       Z9 e«       dC„ «       Z:dD„ Z;ejT                  jW                  dEdFdGg«       edHgdd¬I«      dJ„ «       «       Z<dK„ Z=dL„ Z>dM„ Z?y)Né    N)Úassert_allclose)ÚRadialLocator)Úpyplot)Úimage_comparisonÚcheck_figures_equalzpolar_axes.pngÚdefaultÚdarwing;ßO�—n‚?)ÚstyleÚtolc            
      ó¼  — t        j                  ddd«      } dt         j                  z  | z  }t        j                  «       }|j                  d¬«      }|j                  || dd¬	«      \  }|j                  d
ddd¬	«      \  }d}| |   ||   }}|j                  |g|gd«       |j                  d||fddt        dd¬«      dd¬«       |j                  dddd¬«       y )Nç        ç      ð?çü©ñÒMbP?ç      @T©Úpolarz#ee8d18é   )ÚcolorÚlw©r   r   ©r   é   z#0000ffr   é   Úoza polar annotation)çš™™™™™©?r   zfigure fractionÚblackr   ©Ú	facecolorÚshrinkÚleftÚbaseline)ÚxyÚxytextÚ
textcoordsÚ
arrowpropsÚhorizontalalignmentÚverticalalignmentÚxÚout)ÚaxisÚtick1OnÚtick2OnÚ	direction)
ÚnpÚarangeÚpiÚpltÚfigureÚadd_subplotÚplotÚannotateÚdictÚtick_params)ÚrÚthetaÚfigÚaxÚlineÚindÚthisrÚ	thisthetas           úp/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/matplotlib/tests/test_polar.pyÚtest_polar_annotationsrA      sæ   € ô 	�	‰	�#�s˜EÓ"€AØœŸ™Ñ Ñ!€Eä
�*‰*‹,€CØ	�‰˜tˆÓ	$€BØ�G‰G�E˜1 I°!ˆGÓ4�E€DØ�G‰G�F˜F¨)¸ˆGÓ:�E€Dà
€CØ˜‘v˜u S™zˆ9€EØ‡G�GˆYˆK˜%˜ #Ô&Ø‡K�KÐ$Ø˜uÐ%Ø#Ø,Ü¨'¸$Ô?Ø$*Ø",ð ô ð ‡N�N˜ T°4À5€NÕIó    zpolar_coords.pngTg9´Èv¾ŸŠ?)r
   Úremove_textr   c                  óÎ  — t         j                  j                  ddddd¬«      } t        j                  «       }|j                  d¬«      }|j                  | «       | j                  |j                  «       |j                  d	t        j                  d
z  dft        j                  dz  dfddt        dd¬«      ddd¬«	       |j                  dd«       |j                  dd«       y )Nr   é
   é   r8   ç      à?)r   ÚalphaÚequal)Úaspectzthe topç       @ç      $@r   g      4@r   r   r   r   r    r!   T)r"   r#   Úxycoordsr$   r%   r&   r'   Úclip_oniìÿÿÿ)ÚmplÚpatchesÚEllipser1   r2   r3   Ú
add_artistÚset_clip_boxÚbboxr5   r.   r0   r6   Úset_xlimÚset_ylim)Úelr:   r;   s      r@   Útest_polar_coord_annotationsrX   1   sÂ   € ô 
�‰×	Ñ	˜V R¨°sÀ#Ð	Ó	F€Bä
�*‰*‹,€CØ	�‰ ˆÓ	(€Bà‡M�M�"ÔØ‡O�O�B—G‘GÔà‡K�K�	Ü—E‘E˜"‘H˜c�?ÜŸ™˜a™ �~Ø Ø"Ü¨'¸$Ô?Ø$*Ø",Øð ô 	ð ‡K�K��RÔØ‡K�K��RÕrB   zpolar_alignment.pngÚmpl20)r
   c                  ó|  — t        j                  ddd«      } g d¢}t        j                  «       }g d¢}|j	                  |dd¬«      }|j                  | «       |j	                  |dd	¬«      }|j                  j                  d
«       t        d«      D ]'  }|j                  |   j                  || |   dd¬«       Œ) y )Nr   ih  éZ   )r   çš™™™™™É?çš™™™™™Ù?g333333ã?çš™™™™™é?r   ©çš™™™™™¹?r`   r^   r^   TÚ
horizontal)r   ÚlabelÚverticalFé   r    Útop)Úangler&   r'   )r.   r/   r1   r2   Úadd_axesÚset_thetagridsÚpatchÚset_visibleÚrangeÚaxesÚ
set_rgrids)ÚanglesÚgrid_valuesr:   Úrectra   rc   Úis          r@   Útest_polar_alignmentrr   N   s²   € ô �Y‰Y�q˜#˜rÓ"€FÚ,€Kä
�*‰*‹,€CÚ€Dà—‘˜d¨$°l�ÓC€JØ×Ñ˜fÔ%à�|‰|˜D¨°Jˆ|Ó?€HØ‡N�N×Ñ˜uÔ%ä�1‹Xò AˆØ�‰�‰×ÑØ˜v a™yØ &¸%ð 	õ 	AñArB   c                  óÒ   — t        j                  «       } t        j                  ddgddg«       t        j                  ddgddg«       t        | j                  «      dk(  sJ d	«       ‚y )
Nr   rd   r`   r\   r   é   g333333Ó?r]   z!More than one polar Axes created.)r1   r2   r   Úlenrl   )r:   s    r@   Útest_polar_twicerv   c   sU   € Ü
�*‰*‹,€CÜ‡I�Iˆq�!ˆf�r˜2�hÔÜ‡I�Iˆq�!ˆf�r˜2�hÔÜˆs�x‰x‹=˜AÒÐBÐBÓBÑrB   c                 ó”  — | j                  d¬«      }|j                  t        j                  ddg«      ddg«       |j                  t        j                  ddg«      ddg«       |j                  d¬«      }|j                  t        j                  dd	g«      ddg«       |j                  t        j                  dd
g«      ddg«       y )Nr   ©Ú
projectioné³   iMÿÿÿr\   r`   rd   éþÿÿÿéµ   if  )r3   r4   r.   Údeg2rad©Úfig_testÚfig_refr;   s      r@   Útest_polar_wrapr�   j   s¤   € à	×	Ñ	¨Ð	Ó	1€BØ‡G�GŒB�J‰J˜˜T�{Ó# c¨3 ZÔ0Ø‡G�GŒB�J‰J˜˜2�wÓ # s Ô,Ø	×	Ñ	¨Ð	Ó	0€BØ‡G�GŒB�J‰J˜˜S�zÓ" S¨# JÔ/Ø‡G�GŒB�J‰J˜˜3�xÓ  3¨ *Õ-rB   c                 ón  — dd l mc m} |j                  «        g d¢}g d¢}t	        j
                  | «       t	        j                  |D �cg c]  }||j                  z  ‘Œ c}|«       |j                  d¬«      }|j                  t        j                  |«      |«       |j                  d¬«       y c c}w )Nr   ©g      >@g     €F@g      N@ç     €V@©r   rK   ç      @r   r   rx   Údeg)Úxlabel)Úmatplotlib.testing.jpl_unitsÚtestingÚ	jpl_unitsÚregisterr1   r2   r   r‡   r3   r4   r.   r}   Úset)r   r€   ÚunitsÚxsÚysr(   r;   s          r@   Útest_polar_units_1r‘   t   s…   € ç0Ð0Ø	‡N�NÔÚ	!€BÚ	€Bä‡J�JˆxÔÜ‡I�I bÖ) ˆq�5—9‘9‹}Ò)¨2Ô.à	×	Ñ	¨Ð	Ó	0€BØ‡G�GŒB�J‰J�r‹N˜BÔØ‡F�F�%€FÕùò	 *s   Á
B2c                 óÂ  — dd l mc m} |j                  «        g d¢}|D �cg c]  }||j                  z  ‘Œ }}g d¢}|D �cg c]  }||j
                  z  ‘Œ }}t        j                  | «       t        j                  ||dd¬«       t        t        j                  «       j                  j                  «       |j                  «      sJ ‚|j                  d¬«      }	|	j                  t!        j"                  |«      |«       |	j                  j%                  t&        j(                  j+                  d	j,                  «      «       |	j/                  dd¬
«       y c c}w c c}w )Nr   rƒ   r…   ÚradÚkm)Ú
thetaunitsÚrunitsr   rx   z{:.12})rˆ   Úylabel)r‰   rŠ   r‹   rŒ   r‡   r”   r1   r2   r   Ú
isinstanceÚgcaÚxaxisÚget_major_formatterÚUnitDblFormatterr3   r4   r.   r}   Úset_major_formatterrO   ÚtickerÚFuncFormatterÚformatr�   )
r   r€   rŽ   r�   r(   Úxs_degr�   ÚyÚys_kmr;   s
             r@   Útest_polar_units_2r¤   ƒ   s  € ç0Ð0Ø	‡N�NÔÚ	!€BØ%'Ö( ˆa�%—)‘)‹mÐ(€FÐ(Ú	€BØ#%Ö&˜aˆQ�—‘‹\Ð&€EÐ&ä‡J�JˆxÔä‡I�Iˆf�e¨°dÕ;Ü”c—g‘g“i—o‘o×9Ñ9Ó;Ø×,Ñ,ô.ð .ð .ð 
×	Ñ	¨Ð	Ó	0€BØ‡G�GŒB�J‰J�r‹N˜BÔØ‡H�H× Ñ ¤§¡×!9Ñ!9¸(¿/¹/Ó!JÔKØ‡F�F�% €FÕ%ùò )ùâ&s   ¢EÁEzpolar_rmin.pngc                  ó  — t        j                  ddd«      } dt         j                  z  | z  }t        j                  «       }|j                  dd¬«      }|j                  || «       |j                  d«       |j                  d	«       y )
Nr   r†   ç{®Gáz„?rd   r_   Tr   rK   rG   ©	r.   r/   r0   r1   r2   rg   r4   Úset_rmaxÚset_rmin©r8   r9   r:   r;   s       r@   Útest_polar_rminr«   ˜   si   € ä
�	‰	�!�S˜$Ó€AØŒb�e‰e‰G�A‰I€Eä
�*‰*‹,€CØ	�‰Ð*°$ˆÓ	7€BØ‡G�GˆE�1ÔØ‡K�K�ÔØ‡K�K�ÕrB   zpolar_negative_rmin.pngc                  ó  — t        j                  ddd«      } dt         j                  z  | z  }t        j                  «       }|j                  dd¬«      }|j                  || «       |j                  d«       |j                  d«       y )Ng      Àr   r¦   rd   r_   Tr   r§   rª   s       r@   Útest_polar_negative_rminr­   ¤   si   € ä
�	‰	�$˜˜TÓ"€AØŒb�e‰e‰G�A‰I€Eä
�*‰*‹,€CØ	�‰Ð*°$ˆÓ	7€BØ‡G�GˆE�1ÔØ‡K�K�ÔØ‡K�K�ÕrB   zpolar_rorigin.pngc                  ó6  — t        j                  ddd«      } dt         j                  z  | z  }t        j                  «       }|j                  dd¬«      }|j                  || «       |j                  d«       |j                  d	«       |j                  d
«       y )Nr   r†   r¦   rd   r_   Tr   rK   rG   r   )
r.   r/   r0   r1   r2   rg   r4   r¨   r©   Úset_roriginrª   s       r@   Útest_polar_roriginr°   °   su   € ä
�	‰	�!�S˜$Ó€AØŒb�e‰e‰G�A‰I€Eä
�*‰*‹,€CØ	�‰Ð*°$ˆÓ	7€BØ‡G�GˆE�1ÔØ‡K�K�ÔØ‡K�K�ÔØ‡N�N�3ÕrB   zpolar_invertedylim.pngc                  óv   — t        j                  «       } | j                  dd¬«      }|j                  dd«       y )Nr_   Tr   rd   r   )r1   r2   rg   rV   ©r:   r;   s     r@   Útest_polar_invertedylimr³   ½   s.   € ä
�*‰*‹,€CØ	�‰Ð*°$ˆÓ	7€BØ‡K�K��1ÕrB   zpolar_invertedylim_rorigin.pngc                  óü   — t        j                  «       } | j                  dd¬«      }|j                  j	                  d«       |j                  ddgddgd¬«       |j                  d«       |j                  d«       y )	Nr_   Tr   r   rd   Únone)Úcr   )r1   r2   rg   ÚyaxisÚset_invertedr4   Úmarginsr¯   r²   s     r@   Útest_polar_invertedylim_roriginrº   Ä   se   € ä
�*‰*‹,€CØ	�‰Ð*°$ˆÓ	7€BØ‡H�H×Ñ˜$Ôð ‡G�GˆQ�ˆF�Q˜�F˜f€GÔ%Ø‡J�Jˆq„MØ‡N�N�1ÕrB   zpolar_theta_position.pngc                  ó  — t        j                  ddd«      } dt         j                  z  | z  }t        j                  «       }|j                  dd¬«      }|j                  || «       |j                  dd	«       |j                  d
«       y )Nr   r†   r¦   rd   r_   Tr   ÚNWé   Ú	clockwise)	r.   r/   r0   r1   r2   rg   r4   Úset_theta_zero_locationÚset_theta_directionrª   s       r@   Útest_polar_theta_positionrÁ   Ð   so   € ä
�	‰	�!�S˜$Ó€AØŒb�e‰e‰G�A‰I€Eä
�*‰*‹,€CØ	�‰Ð*°$ˆÓ	7€BØ‡G�GˆE�1ÔØ×Ñ˜t RÔ(Ø×Ñ˜;Õ'rB   zpolar_rlabel_position.pngc                  ó–   — t        j                  «       } | j                  d¬«      }|j                  d«       |j	                  d¬«       y )Nr   rx   i;  Úauto)Úrotation)r1   r2   r3   Úset_rlabel_positionr7   r²   s     r@   Útest_polar_rlabel_positionrÆ   Ü   s9   € ä
�*‰*‹,€CØ	�‰ GˆÓ	,€BØ×Ñ˜3ÔØ‡N�N˜F€NÕ#rB   zpolar_title_position.pngc                  ór   — t        j                  «       } | j                  d¬«      }|j                  d«       y )Nr   rx   Úfoo)r1   r2   r3   Ú	set_titler²   s     r@   Útest_polar_title_positionrÊ   ä   s)   € ä
�*‰*‹,€CØ	�‰ GˆÓ	,€BØ‡L�L�ÕrB   zpolar_theta_wedge.pngc                  óD  — t        j                  ddd«      } dt         j                  z  | z  }t        j                  ddd«      }t        j                  ddd«      }d	}t        j                  t        |«      t        |«      d
did¬«      \  }}t        |«      D �]  \  }}t        |«      D ]ð  \  }	}
|||	f   }|j                  || «       ||
k  r#|j                  |«       |j                  |
«       n3|j                  |
«       |j                  |«       |j                  d«       |j                  dd||t        |«      z     d¬«       |j                  j                  dd¬«       |j                  j                  «       j                   j#                  g d¢¬«       Œò �Œ y )Nr   r†   r¦   rd   g      .@g     �v@r„   g      I@)r)   ÚinÚinoutr   T)é   é   )Ú
subplot_kwÚfigsizer¾   rÃ   )r+   r,   r-   rÄ   )Úlabel2OnrÄ   )r   rd   g      @é   rE   )Ústeps)r.   r/   r0   r1   Úsubplotsru   Ú	enumerater4   Úset_thetaminÚset_thetamaxrÀ   r7   r·   Úset_tick_paramsrš   Úget_major_locatorÚbaseÚ
set_params)r8   r9   Ú
theta_minsÚ
theta_maxsÚ
DIRECTIONSr:   Úaxsrq   ÚstartÚjÚendr;   s               r@   Útest_polar_theta_limitsrä   ë   su  € ä
�	‰	�!�S˜$Ó€AØŒb�e‰e‰G�A‰I€Eä—‘˜4 ¨Ó-€JÜ—‘˜4 ¨Ó-€JØ'€Jä�|‰|œC 
›O¬S°«_Ø(/° Ø$*ô,�H€Cˆô ˜jÓ)ó *‰ˆˆ5Ü 
Ó+ò 	*‰FˆAˆsØ�Q˜�T‘ˆBØ�G‰G�E˜1ÔØ�sŠ{Ø—‘ Ô&Ø—‘ Õ$ð —‘ Ô$Ø—‘ Ô&Ø×&Ñ& {Ô3Ø�N‰N 4°Ø%/°´C¸
³OÑ0CÑ%DØ$*ð ô ,ð �H‰H×$Ñ$¨d¸VÐ$ÔDØ�H‰H×&Ñ&Ó(×-Ñ-×8Ñ8Ú(ð 9õ *ò	*ñ*rB   c                 óà   — | j                  ddi¬«      }|j                  d¬«       |j                  d¬«       |j                  ddi¬«      }|j                  d«       |j                  d«       y )	Nr   T©rÐ   rE   )re   rG   ©ÚbottomrL   ©rÕ   Úset_rlimr¨   r©   r~   s      r@   Útest_polar_rlimrë     sc   € à	×	Ñ	 w° oÐ	Ó	6€BØ‡K�K�B€KÔØ‡K�K�r€KÔà	×	Ñ	 g¨t _Ð	Ó	5€BØ‡K�K�ÔØ‡K�K�…OrB   c                 óÀ   — | j                  ddi¬«      }|j                  ddg¬«       |j                  ddi¬«      }|j                  d«       |j                  d«       y )Nr   Træ   rG   rE   rç   rL   ré   r~   s      r@   Útest_polar_rlim_bottomrí     sY   € à	×	Ñ	 w° oÐ	Ó	6€BØ‡K�K˜˜B�x€KÔ à	×	Ñ	 g¨t _Ð	Ó	5€BØ‡K�K�ÔØ‡K�K�…OrB   c                  óò   — t        j                  «       j                  d¬«      } | j                  t	        j
                  d«      t	        j
                  d«      dz   «       | j                  «       d   dk(  sJ ‚y )Nr   rx   rE   r¦   r   )r1   r2   r3   r4   r.   r/   Úget_ylim©r;   s    r@   Útest_polar_rlim_zerorñ   !  sW   € Ü	�‰‹×	!Ñ	!¨WÐ	!Ó	5€BØ‡G�GŒB�I‰I�b‹Mœ2Ÿ9™9 R›=¨3Ñ.Ô/Ø�;‰;‹=˜Ñ˜qÒ Ð Ñ rB   c                  ór  — t        j                  d¬«       t        j                  «       } | j                  «       dk(  r| j	                  «       dk(  sJ ‚t        j
                  d«       t        j                  «        t        j                  «       } | j                  «       dk(  r| j	                  «       dk(  sJ ‚y )Nr   rx   r   r   Úall)r1   Úsubplotr™   Úget_rminÚget_rmaxÚcloser   rð   s    r@   Útest_polar_no_datarø   '  s~   € Ü‡K�K˜7Õ#Ü	�‰‹€BØ�;‰;‹=˜AÒ "§+¡+£-°1Ò"4Ð4Ð4Ü‡I�IˆeÔä‡I�I„KÜ	�‰‹€BØ�;‰;‹=˜AÒ "§+¡+£-°1Ò"4Ð4Ð4Ð"4rB   c                  ó¤   — t        j                  d¬«       t        j                  «       } | j                  d«       | j	                  «       dkD  sJ ‚y )Nr   rx   Úlogr   )r1   rô   r™   Ú
set_rscalerõ   rð   s    r@   Útest_polar_default_log_limsrü   2  s9   € Ü‡K�K˜7Õ#Ü	�‰‹€BØ‡M�M�%ÔØ�;‰;‹=˜1ÒÐÑrB   c                  óÊ   — t        j                  «       j                  d¬«      } t        j                  t
        «      5  | j                  d«       d d d «       y # 1 sw Y   y xY w)Nr   rx   Údatalim)r1   r2   r3   ÚpytestÚraisesÚ
ValueErrorÚset_adjustablerð   s    r@   Ú!test_polar_not_datalim_adjustabler  9  sJ   € Ü	�‰‹×	!Ñ	!¨WÐ	!Ó	5€BÜ	�‰”zÓ	"ñ %Ø
×Ñ˜)Ô$÷%÷ %ñ %ús   ¾AÁA"c                  óÞ  — t        j                  «       } | j                  d¬«      }|j                  d¬«       t        j                  |j
                  j                  «       d¬«       | j                  j                  «        |j                  j                  d   j                  j                  «       dk(  sJ ‚|j
                  j                  d   j                  j                  «       dk(  sJ ‚y )NTr   r\   )rH   F)Úvisibler   )r1   r2   r3   ÚgridÚsetpr·   Úget_ticklabelsÚcanvasÚdrawrš   Ú
majorTicksÚgridlineÚ	get_alphar²   s     r@   Útest_polar_gridlinesr  ?  s¬   € Ü
�*‰*‹,€CØ	�‰˜tˆÓ	$€Bà‡G�G�#€GÔä‡H�HˆR�X‰X×$Ñ$Ó&°Õ6Ø‡J�J‡O�OÔØ�8‰8×Ñ˜qÑ!×*Ñ*×4Ñ4Ó6¸"Ò<Ð<Ð<Ø�8‰8×Ñ˜qÑ!×*Ñ*×4Ñ4Ó6¸"Ò<Ð<Ñ<rB   z!theta_zero_location, theta_offset)))ÚNrF   N))r  r½   N)NgPERTû!ù?c                 óL  — t        j                  ddi¬«      \  }}| � |j                  d«        |j                  | Ž  |�|j	                  |«       |j
                  j                  «        |j                  d   j                  «       j                  j                  «       dkD  sJ ‚y )Nry   r   ræ   éÿÿÿÿr   )r1   rÕ   rÀ   r¿   Úset_theta_offsetr	  r
  ÚspinesÚget_tightbboxÚsizeÚmin)Útheta_zero_locationÚtheta_offsetr:   r;   s       r@   Ú$test_polar_outer_spine_not_collapsedr  K  s“   € ô �l‰l |°WÐ&=Ô>�G€CˆØÐ&Ø
×Ñ˜rÔ"Ø"ˆ×"Ñ"Ð$7Ñ8ØÐØ
×Ñ˜LÔ)Ø‡J�J‡O�OÔð �9‰9�WÑ×+Ñ+Ó-×2Ñ2×6Ñ6Ó8¸1Ò<Ð<Ñ<rB   c                  óô   — t        j                  ddi¬«      \  } }| j                  j                  «        |j	                  | j                  j                  «       «      }t        |j                  g d¢d¬«       y )Nry   r   ræ   )gèÞÃ%Ç[@gê•²q=@g_)ËÇÝ€@g¡Ö4ï8.|@r   )Úrtol)r1   rÕ   r	  r
  r  Úget_rendererr   Úextents)r:   r;   Úbbs      r@   Útest_get_tightbbox_polarr  a  sY   € Ü�l‰l |°WÐ&=Ô>�G€CˆØ‡J�J‡O�OÔØ	×	Ñ	˜#Ÿ*™*×1Ñ1Ó3Ó	4€BÜØ
�
‰
Ò<À5öJrB   c                 óÔ  — | j                  dd¬«      j                  dgdgdt        j                  z  dd¬	«      }| j                  d
d¬«      j                  dgdgdt        j                  z  dd¬	«      }|j                  dd¬«      j                  dgdgdt        j                  z  dd¬	«      }|j                  d
d¬«      j                  dgdgdt        j                  z  dd¬	«      }y )Néy   r   rx   r   r   r   rµ   F)Ú	edgecolorÚantialiasedéz   éýÿÿÿrd   r{   )r3   Úbarr.   r0   )r   r€   Úp1Úp2Úp3Úp4s         r@   Ú)test_polar_interpolation_steps_constant_rr+  i  sä   € ð ×
Ñ
˜s¨wÐ
Ó
7ß‰3�ˆs�Q�C˜œ2Ÿ5™5™¨FÀˆ3ÓFð à
×
Ñ
˜s¨wÐ
Ó
7ß‰3�ˆs�Q�C˜œBŸE™E™¨VÀˆ3ÓGð à
×
Ñ
˜c¨gÐ
Ó
6ß‰3�ˆs�Q�C˜œ2Ÿ5™5™¨FÀˆ3ÓFð à
×
Ñ
˜c¨gÐ
Ó
6ß‰3�ˆs�Q�C˜œBŸE™E™¨VÀˆ3ÓGñ rB   c                 óZ  — | j                  d¬«      j                  dt        j                  dz  gddg«      \  }d|j	                  «       _        |j                  d¬«      j                  t        j                  dt        j                  dz  d«      t        j                  ddd«      «       y )Nr   rx   r   rd   r   éd   ée   )r3   r4   r.   r0   Úget_pathÚ_interpolation_stepsÚlinspace)r   r€   Úls      r@   Ú)test_polar_interpolation_steps_variable_rr3  w  s…   € à	×	Ñ	¨Ð	Ó	1×	6Ñ	6¸¼2¿5¹5À¹7°|ÀaÈÀVÓ	L�B€AØ(+€A‡J�JƒLÔ%Ø×Ñ 7ÐÓ+×0Ñ0Ü
�‰�A”r—u‘u˜Q‘w Ó$¤b§k¡k°!°Q¸Ó&<õ>rB   c                  óÈ  — t        j                  d¬«      } | j                  ddt        j                  z  «       | j                  dd¬«       t        j                  t        d¬	«      5  | j                  dd
t        j                  z  «       d d d «       t        j                  t        d¬	«      5  | j                  dd¬«       d d d «       y # 1 sw Y   ŒAxY w# 1 sw Y   y xY w)Nr   rx   r   rd   r   i¸  )ÚthetaminÚthetamaxz+angle range must be less than a full circle)Úmatchr   i�  )r1   rô   Úset_thetalimr.   r0   rÿ   r   r  rð   s    r@   Útest_thetalim_valid_invalidr9    s±   € Ü	�‰ Ô	(€BØ‡O�O�A�qœ2Ÿ5™5‘yÔ!Ø‡O�O˜S¨3€OÔ/Ü	�‰”zØJô
Lñ &à
�‰˜˜1œrŸu™u™9Ô%÷&ô 
�‰”zØJô
Lñ 4à
�‰ ¨sˆÔ3÷4ð 4÷&ð &ú÷4ð 4ús   Á($CÂ/CÃCÃC!c                  óz  — t        j                  d¬«      } | j                  dd«       t        t	        j
                  | j                  «       | j                  «       f«      «      dk(  sJ ‚| j                  d«       t        t	        j
                  | j                  «       | j                  «       f«      «      dk(  sJ ‚y )Nr   rx   r   r   r   )rd   r   )r1   rô   r8  Útupler.   ÚradiansÚget_thetaminÚget_thetamaxrð   s    r@   Útest_thetalim_argsr?  ‹  sˆ   € Ü	�‰ Ô	(€BØ‡O�O�A�qÔÜ”—‘˜RŸ_™_Ó.°·±Ó0AÐBÓCÓDÈÒNÐNÐNØ‡O�O�FÔÜ”—‘˜RŸ_™_Ó.°·±Ó0AÐBÓCÓDÈÒNÐNÑNrB   c                  óª  — t        j                  dddi¬«      \  } }|j                  «       D ]"  }|j                  dt        j
                  «       Œ$ |j                  «       D ]o  }t	        j                  |j                  j                  «       «      j                  «       }t        j                  d«      |v sJ ‚t        j                  d«      |vrŒoJ ‚ y )NzAAAABB.ry   r   ræ   r   r[   r-  )r1   Úsubplot_mosaicÚvaluesr8  r.   r0   Údegreesrš   Úget_majorticklocsÚtolistrÿ   Úapprox)r:   rà   r;   Úticklocss       r@   Útest_default_thetalocatorrH  “  s°   € ô ×!Ñ!Ø˜|¨WÐ5ô7�H€Cˆà�j‰j‹lò "ˆØ
�‰˜œ2Ÿ5™5Õ!ð"à�j‰j‹lò 2ˆÜ—:‘:˜bŸh™h×8Ñ8Ó:Ó;×BÑBÓDˆÜ�}‰}˜RÓ  HÑ,Ð,Ð,Ü�}‰}˜SÓ!¨Ò1Ð1Ð1ñ2rB   c                  ó´   — t        j                  d¬«      } | j                  dt        j                  dz  «      }|j                  «       j                  dkD  sJ ‚y )Nr   rx   r   rt   r   )r1   rô   Úaxvspanr.   r0   r/  r0  )r;   Úspans     r@   Útest_axvspanrL  ¡  sB   € Ü	�‰ Ô	(€BØ�:‰:�aœŸ™˜q™Ó!€DØ�=‰=‹?×/Ñ/°!Ò3Ð3Ñ3rB   c                 óð   — | j                  dddddi¬«      }dD ]  }|j                  |   j                  «        Œ! |j                  dddddi¬«      }dD ]  }|j                  |   j                  «        Œ! y )Nrd   Try   r   )ÚsharexrÐ   )r   r   r   )ÚshareyrÐ   )rÕ   ÚflatÚremove)r€   r   rà   rq   s       r@   Útest_remove_shared_polarrR  §  s�   € ð
 ×
Ñ
Ø	ˆ1�T |°WÐ&=ð ó ?€Càò ˆØ�‰�‰×ÑÕðà
×
Ñ
Ø	ˆ1�T |°WÐ&=ð ó ?€Càò ˆØ�‰�‰×ÑÕñrB   c                  óF  — t        j                  ddddidd¬«      \  } }| j                  j                  «        |d   j                  j
                  d   j                  «       sJ ‚|d   j                  j
                  d   j                  «       sJ ‚t        j                  dddidd¬«      \  } }| j                  j                  «        |d	   j                  j
                  d   j                  «       sJ ‚|d	   j                  j
                  d   j                  «       sJ ‚y )
Nrd   ry   r   T)rÐ   rN  rO  r   r   zab
cdÚb)	r1   rÕ   r	  r
  rš   r  Úget_visibler·   rA  )r:   rà   s     r@   Ú"test_shared_polar_keeps_ticklabelsrV  ¶  sø   € Ü�|‰|Ø	ˆ1˜,¨Ð0¸ÀdôL�H€Cˆà‡J�J‡O�OÔØˆt‰9�?‰?×%Ñ% aÑ(×4Ñ4Ô6Ð6Ð6Øˆt‰9�?‰?×%Ñ% aÑ(×4Ñ4Ô6Ð6Ð6Ü×!Ñ!Ø˜l¨GÐ4¸TÈ$ôP�H€Cˆà‡J�J‡O�OÔØˆs‰8�>‰>×$Ñ$ QÑ'×3Ñ3Ô5Ð5Ð5Øˆs‰8�>‰>×$Ñ$ QÑ'×3Ñ3Ô5Ð5Ñ5rB   c                  óÆ   — t        j                  d¬«      } | j                  dd«       | j                  d«       | j	                  ddg«       | j                  «       dk(  sJ ‚y )	Nr   rx   r   r   rG   r`   r\   )r   r\   )r1   rô   rJ  Úaxvliner4   rï   rð   s    r@   Ú(test_axvline_axvspan_do_not_modify_rlimsrY  Ã  sM   € Ü	�‰ Ô	(€BØ‡J�Jˆq�!ÔØ‡J�Jˆr„NØ‡G�GˆR�ˆHÔØ�;‰;‹=˜GÒ#Ð#Ñ#rB   c                  óÎ  — t        j                  d¬«      } | j                  dd«      dk(  sJ ‚| j                  dd«      dk(  sJ ‚| j                  dd«      d	k(  sJ ‚| j                  dd«      d
k(  sJ ‚| j                  dd«      dk(  sJ ‚| j                  dd«      dk(  sJ ‚| j                  dd«      dk(  sJ ‚| j                  dd«      dk(  sJ ‚| j                  dd«      dk(  sJ ‚y )Nr   rx   r   ç{®Gázt?u   Î¸=0.0Ï€ (0Â°), r=0.005r`   u   Î¸=0.00Ï€ (0Â°), r=0.100r   u   Î¸=0.000Ï€ (0.0Â°), r=1.000u   Î¸=0.3Ï€ (57Â°), r=0.005u   Î¸=0.32Ï€ (57Â°), r=0.100u   Î¸=0.318Ï€ (57.3Â°), r=1.000rd   u   Î¸=0.6Ï€ (115Â°), r=0.005u   Î¸=0.64Ï€ (115Â°), r=0.100u   Î¸=0.637Ï€ (114.6Â°), r=1.000)r1   rô   Úformat_coordrð   s    r@   Útest_cursor_precisionr]  Ë  sú   € Ü	�‰ Ô	(€Bà�?‰?˜1˜eÓ$Ð(AÒAÐAÐAØ�?‰?˜1˜bÓ!Ð%?Ò?Ð?Ð?Ø�?‰?˜1˜aÓ Ð$AÒAÐAÐAØ�?‰?˜1˜eÓ$Ð(BÒBÐBÐBØ�?‰?˜1˜bÓ!Ð%@Ò@Ð@Ð@Ø�?‰?˜1˜aÓ Ð$BÒBÐBÐBØ�?‰?˜1˜eÓ$Ð(CÒCÐCÐCØ�?‰?˜1˜bÓ!Ð%AÒAÐAÐAØ�?‰?˜1˜aÓ Ð$CÒCÐCÑCrB   c                  ó(  — t        j                  d¬«      } d„ }d | _        || _        | j	                  dd«      dk(  sJ ‚| j	                  dd«      d	k(  sJ ‚| j	                  d
d«      dk(  sJ ‚|| _        d | _        | j	                  dd«      dk(  sJ ‚| j	                  dd«      dk(  sJ ‚| j	                  dd«      dk(  sJ ‚|| _        || _        | j	                  dd«      dk(  sJ ‚| j	                  dd«      dk(  sJ ‚| j	                  dd«      dk(  sJ ‚y )Nr   rx   c                 ó   — d| dz  z  S )Nz$%1.1fMg�íµ ÷Æ°>© )r(   s    r@   Úmillionsz&test_custom_fmt_data.<locals>.millionsÛ  s   € Ø˜A˜d™FÑ#Ð#rB   é   g    ÐsAu,   Î¸=3.8197186342Ï€ (687.54935416Â°), r=$20.0MiÒ  g    €„>Au-   Î¸=392.794399551Ï€ (70702.9919191Â°), r=$2.0Mr   r-  u!   Î¸=0.95493Ï€ (171.887Â°), r=$0.0Mg     jAr   u   Î¸=$0.2M, r=1.000r`   u   Î¸=$0.0M, r=0.100g    €„.Ar[  u   Î¸=$1.0M, r=0.005g   ÀZöAu   Î¸=$2.0M, r=$6000.0Mg ÈNgmÁ«Cl   {Ä  u!   Î¸=$1000000000000.0M, r=$12891.3Ml   ¿1;Ti À	Bu   Î¸=$3938980.6M, r=$1107.9M)r1   rô   Ú	fmt_xdataÚ	fmt_ydatar\  )r;   ra  s     r@   Útest_custom_fmt_datare  Ù  s/  € Ü	�‰ Ô	(€Bò$ð €B„LØ€B„LØ�?‰?˜2˜sÓ#Ð'UÒUÐUÐUØ�?‰?˜4 Ó%Ð)XÒXÐXÐXØ�?‰?˜1˜cÓ"Ð&IÒIÐIÐIð €B„LØ€B„LØ�?‰?˜3 Ó"Ð&9Ò9Ð9Ð9Ø�?‰?˜1˜bÓ!Ð%8Ò8Ð8Ð8Ø�?‰?˜3 Ó&Ð*=Ò=Ð=Ð=ð €B„LØ€B„LØ�?‰?˜3 Ó(Ð,BÒBÐBÐBØ�?‰?˜4 Ó-Ð1TÒTÐTÐTØ�?‰?˜5 ,Ó/Ð3OÒOÐOÑOrB   zpolar_log.pngc                  ó4  — t        j                  «       } | j                  d¬«      }|j                  d«       |j	                  dd«       d}|j                  t        j                  ddt        j                  z  |«      t        j                  dd|«      «       y )	NTr   rú   r   iè  r-  r   rd   )
r1   r2   r3   rû   rê   r4   r.   r1  r0   Úlogspace)r:   r;   Úns      r@   Útest_polar_logri  ô  sl   € ä
�*‰*‹,€CØ	�‰˜tˆÓ	$€Bà‡M�M�%ÔØ‡K�K��4Ôà€AØ‡G�GŒB�K‰K˜˜1œrŸu™u™9 aÓ(¬"¯+©+°a¸¸AÓ*>Õ?rB   c                 óÌ  — | j                  dd¬«      }|j                  dd«       |j                  d«       |j                  t	        j
                  ddd«      «       |j                  dd¬«      }|j                  d«       |j                  d	d
«       |j                  d«       |j                  t	        j                  ddd«      «       ||fD ]  }|j                  d¬«       Œ y )Nr   Úred)ry   r   r   rd   r%  rÓ   rú   r   r-  r   F)Ú	labelleft)	r3   rê   r¯   Ú
set_rticksr.   r1  rû   rg  r7   )r€   r   Úax_refÚax_testr;   s        r@   Útest_polar_log_roriginrp     sÍ   € ð × Ñ ¨G¸uÐ ÓE€FØ
‡O�O�A�qÔØ
×Ñ�rÔØ
×Ñ”b—k‘k ! Q¨Ó*Ô+à×"Ñ"¨gÀÐ"ÓG€GØ×Ñ�uÔØ×Ñ�Q˜ÔØ×Ñ˜ÔØ×Ñ”r—{‘{ 1 a¨Ó+Ô,à�gˆoò (ˆà
�‰ ˆÕ'ñ(rB   c                  ó4  — t        j                  «       } | j                  d¬«      }|j                  t        j
                   t        j
                  «       |j                  j                  «       D �cg c]  }|j                  «       ‘Œ }}|g d¢k(  sJ ‚y c c}w )Nr   rx   )u   -180Â°u   -135Â°u   -90Â°u   -45Â°u   0Â°u   45Â°u   90Â°u   135Â°)	r1   r2   r3   r8  r.   r0   rš   r  Úget_text)r:   r;   r2  Úlabelss       r@   Útest_polar_neg_theta_limsrt    so   € Ü
�*‰*‹,€CØ	�‰ GˆÓ	,€BØ‡O�O”R—U‘U�FœBŸE™EÔ"Ø$&§H¡H×$;Ñ$;Ó$=Ö>˜qˆa�j‰j�lÐ>€FÐ>ØÒ[Ò[Ð[Ñ[ùò ?s   Á2BÚorderÚbeforeÚafterzpolar_errorbar.png)Úbaseline_imagesrC   r
   c           	      óì  — t        j                  ddt         j                  z  t         j                  dz  «      }|t         j                  z  dz  dz   }t        j                  d¬«      }|j                  d¬«      }| d	k(  r;|j                  d
«       |j                  d«       |j                  ||ddddd¬«       y |j                  ||ddddd¬«       |j                  d
«       |j                  d«       y )Nr   rd   rÎ   rG   )rÓ   rÓ   )rÑ   r   rx   rv  r  r  r`   é   r   Úseagreen)ÚxerrÚyerrÚcapsizeÚfmtr¶   )	r.   r/   r0   r1   r2   r3   r¿   rÀ   Úerrorbar)ru  r9   r8   r:   r;   s        r@   Útest_polar_errorbarr�    sÏ   € ô �I‰I�a˜œRŸU™U™¤B§E¡E¨A¡IÓ.€EØ”—‘‰˜Ñ˜CÑ€AÜ
�*‰*˜VÔ
$€CØ	�‰ GˆÓ	,€BØ�ÒØ
×"Ñ" 3Ô'Ø
×Ñ˜rÔ"Ø
�‰�E˜1 3¨S¸!ÀÈ
ˆÕSà
�‰�E˜1 3¨S¸!ÀÈ
ˆÔSØ
×"Ñ" 3Ô'Ø
×Ñ˜rÕ"rB   c                  óÆ  — t        j                  «       } | j                  d¬«      }|j                  «       dk(  sJ ‚|j	                  g d¢«       |j                  «       dk(  sJ ‚|j                  ddgddg«       |j                  «       dk(  sJ ‚|j	                  g d	¢«       |j                  «       d
k(  sJ ‚|j                  ddgddg«       |j                  «       dk(  sJ ‚y )Nr   rx   r   )r   rd   r   rt   )r   rt   r   rd   )r   rd   )r  r   r   rd   )r  rd   r  r{   )r{   rd   )r1   r2   r3   rï   rm  r4   r²   s     r@   Útest_radial_limits_behaviorrƒ  .  sÇ   € ô �*‰*‹,€CØ	�‰ GˆÓ	,€BØ�;‰;‹=˜FÒ"Ð"Ð"à‡M�M’,ÔØ�;‰;‹=˜FÒ"Ð"Ð"à‡G�GˆQ�ˆF�Q˜�FÔØ�;‰;‹=˜FÒ"Ð"Ð"à‡M�M’-Ô Ø�;‰;‹=˜GÒ#Ð#Ð#à‡G�GˆQ�ˆF�R˜�HÔØ�;‰;‹=˜GÒ#Ð#Ñ#rB   c                  óD  — t        j                  ddi¬«      \  } }|j                  j                  sJ ‚t	        |j                  j                  «       t        «      sJ ‚t        j                  d«      }|j                  j                  |«       |j                  j                  rJ ‚t	        |j                  j                  «       t        «      sJ ‚|j                  j                  «       j                  |u sJ ‚|j                  «        |j                  j                  sJ ‚t	        |j                  j                  «       t        «      sJ ‚|j                  g d¢«       |j                  j                  rJ ‚t	        |j                  j                  «       t        «      sJ ‚t	        |j                  j                  «       j                  t        j                  «      sJ ‚|j                  «        |j                  g d¢«       |j                  j                  rJ ‚t	        |j                  j                  «       t        «      sJ ‚t	        |j                  j                  «       j                  t        j                  «      sJ ‚|j                  «        |j                  d«       |j                  j                  sJ ‚t	        |j                  j                  «       t        «      sJ ‚t	        |j                  j                  «       j                  t        j                   «      sJ ‚y )Nry   r   ræ   r   ©r   r   rd   r   rú   )r1   rÕ   r·   ÚisDefault_majlocr˜   rÚ   r   ÚmtickerÚMaxNLocatorÚset_major_locatorrÛ   Úclearrm  ÚFixedLocatorrm   Ú
set_yscaleÚ
LogLocator)r:   r;   Úlocators      r@   Útest_radial_locator_wrappingr�  B  s<  € ô �l‰l |°WÐ&=Ô>�G€CˆØ�8‰8×$Ò$Ð$Ð$Ü�b—h‘h×0Ñ0Ó2´MÔBÐBÐBô ×!Ñ! !Ó$€GØ‡H�H×Ñ˜wÔ'Ø�x‰x×(Ò(Ð(Ð(Ü�b—h‘h×0Ñ0Ó2´MÔBÐBÐBØ�8‰8×%Ñ%Ó'×,Ñ,°Ñ7Ð7Ð7à‡H�H„JØ�8‰8×$Ò$Ð$Ð$Ü�b—h‘h×0Ñ0Ó2´MÔBÐBÐBà‡M�M’,ÔØ�x‰x×(Ò(Ð(Ð(Ü�b—h‘h×0Ñ0Ó2´MÔBÐBÐBÜ�b—h‘h×0Ñ0Ó2×7Ñ7¼×9MÑ9MÔNÐNÐNà‡H�H„Jà‡M�M’,ÔØ�x‰x×(Ò(Ð(Ð(Ü�b—h‘h×0Ñ0Ó2´MÔBÐBÐBÜ�b—h‘h×0Ñ0Ó2×7Ñ7¼×9MÑ9MÔNÐNÐNà‡H�H„Jà‡M�M�%Ôð �8‰8×$Ò$Ð$Ð$Ü�b—h‘h×0Ñ0Ó2´MÔBÐBÐBÜ�b—h‘h×0Ñ0Ó2×7Ñ7¼×9KÑ9KÔLÐLÑLrB   c                  óš   — t        j                  ddi¬«      \  } }|j                  g d¢«       |j                  j	                  g d¢«       y )Nry   r   ræ   r…  )ÚzeroÚoneÚtwoÚthree)r1   rÕ   rm  r·   Úset_ticklabelsr²   s     r@   Ú%test_set_rticks_ticklabels_no_warningr–  j  s:   € ô
 �l‰l |°WÐ&=Ô>�G€CˆØ‡M�M’,ÔØ‡H�H×ÑÒ;Õ<rB   )@ÚsysÚnumpyr.   Únumpy.testingr   rÿ   Ú
matplotlibrO   Úmatplotlib.projections.polarr   r   r1   Úmatplotlib.testing.decoratorsr   r   Úmatplotlib.tickerrž   r‡  ÚplatformrA   rX   rr   rv   r�   r‘   r¤   r«   r­   r°   r³   rº   rÁ   rÆ   rÊ   rä   rë   rí   rñ   rø   rü   r  r  ÚmarkÚparametrizer  r  r+  r3  r9  r?  rH  rL  rR  rV  rY  r]  re  ri  rp  rt  r�  rƒ  r�  r–  r`  rB   r@   ú<module>r¡     s�  ðÛ 
ã Ý )Û ã Ý 6Ý $ß OÝ #ñ Ð#Ð$¨IØ"Ÿ|™|¨xÒ7‘e¸Qô@ñJó@ðJñB Ð%Ð&¨iÀTØ"Ÿ|™|¨xÒ7‘e¸Qô@ñó@ðñ6 Ð(Ð)°Ô9ñAó :ðAò(Cñ Óñ.ó ð.ñ Óñó ðñ Óñ&ó ð&ñ( Ð#Ð$¨IÔ6ñó 7ðñ Ð,Ð-°YÔ?ñó @ðñ Ð&Ð'¨yÔ9ñ	ó :ð	ñ Ð+Ð,°IÔ>ñó ?ðñ Ð3Ð4¸IÔFñó Gðñ Ð-Ð.°iÔ@ñ(ó Að(ñ Ð.Ð/°yÔAñ$ó Bð$ñ Ð-Ð.°gÔ>ñó ?ðñ Ð*Ð+°9Ô=ñ*ó >ð*ñ@ Óñó ðñ Óñó ðò!ò5òò%ò	=ð ‡�×ÑÐ<ò ?ó ñ
=óð
=ò"Jñ Óñ
Ió ð
Iñ Óñ>ó ð>ò	4òOò2ò4ñ Óñó ðò
6ò$òDòPñ6 �?Ð#¨9Ô5ñ@ó 6ð@ñ Óñ(ó ð(ò&\ð ‡�×Ñ˜ 8¨WÐ"5Ó6ÙÐ#7Ð"8ÀdØô!ñ#ó!ó 7ð#ò$ò(%MóP=rB   