Ë
    µ2Úi& ã                   ó  — d dl mZ d dlZd dlZd dlZd dlZd dlZd dlm	Z	m
Z
 d dlZd dlZd dlmZ d dlmZ  G d„ d«      Z G d„ d«      Z G d„ d	«      Z G d
„ d«      Z G d„ d«      Z G d„ d«      Z G d„ d«      Z G d„ d«      Z G d„ d«      Z G d„ d«      Z G d„ d«      Z G d„ d«      Z G d„ d«      Z  G d„ d«      Z! G d „ d!«      Z" G d"„ d#«      Z# G d$„ d%«      Z$ G d&„ d'«      Z% G d(„ d)«      Z& G d*„ d+«      Z' G d,„ d-«      Z(d.„ Z) G d/„ d0«      Z*d1„ Z+d2„ Z,d3„ Z-d4„ Z.d5„ Z/d6„ Z0d7„ Z1ejd                  jg                  d8d9«      d:„ «       Z4ejd                  jg                  d;d<d=g ejj                  d>«      g«      d?„ «       Z6ejd                  jg                  d@g dA¢«      ejn                  jq                  dB«      dC„ «       «       Z9dD„ Z:ejd                  jg                  dE ejv                  dF„ «       ejx                  dG«      f«      dH„ «       Z=y)Ié    )ÚnullcontextN)Úassert_almost_equalÚassert_array_equalc            
       ó"  — e Zd Zdd ej                  g d¢«      fdd ej                  g d¢«      fdd ej                  g d	¢«      fd
d ej
                  d«      dz  fdd
 ej
                  dd«      dz  fgZddd ej                  g d¢«      fddd ej                  g d¢«      fddg d¢ ej                  g d¢«      fgZej                  j                  de«      d„ «       Zej                  j                  de«      d„ «       Zej                  j                  ddd
ie ej                  d «      fd!d"dgied#fd!d"ied#fd!d"d$gied#fg«      d%„ «       Zej                  j                  d&g d'¢g d'¢fd"d(gg d'¢fdd"gg d'¢fd"gg d'¢fg«      d)„ «       Zy)*ÚTestMaxNLocatoré   éd   )ç      4@ç      D@g      N@g      T@ç      Y@çü©ñÒMbP?ç-Cëâ6?)ç        g-Cëâ6*?g-Cëâ6:?ga2U0*©C?g-Cëâ6J?r   ç  4&õkÃç  4&õkC)r   g  4&õküÂr   g  4&õküBr   r   g�œ&q‰5é   gL“oûñg5g�œ&q‰µéûÿÿÿé   çš™™™™™¹¿çš™™™™™ñ?N)éÿÿÿÿr   r   é   çffffffî?)g      Ð¿r   ç      Ð?ç      à?ç      è?ç      ð?é7   )r   ç      ø?é   r   é
   )r   é   é   é-   é<   úvmin, vmax, expectedc                 óh   — t        j                  d¬«      }t        |j                  ||«      |«       y )Nr    ©Únbins©ÚmtickerÚMaxNLocatorr   Útick_values)ÚselfÚvminÚvmaxÚexpectedÚlocs        úS/var/www/html/acx/venv/lib/python3.12/site-packages/matplotlib/tests/test_ticker.pyÚ
test_basiczTestMaxNLocator.test_basic   s'   € ä×!Ñ!¨Ô*ˆÜ˜CŸO™O¨D°$Ó7¸ÕBó    zvmin, vmax, steps, expectedc                 ól   — t        j                  dd|¬«      }t        |j                  ||«      |«       y )Nr    T)r)   ÚintegerÚstepsr*   )r.   r/   r0   r8   r1   r2   s         r3   Útest_integerzTestMaxNLocator.test_integer$   s+   € ä×!Ñ!¨°4¸uÔEˆÜ˜CŸO™O¨D°$Ó7¸ÕBr5   zkwargs, errortype, matchÚfooz5set_params() got an unexpected keyword argument 'foo'r8   r   z$steps argument must be an increasingé   c                 ó†   — t        j                  ||¬«      5  t        j                  di |¤Ž d d d «       y # 1 sw Y   y xY w)N©Úmatch© )ÚpytestÚraisesr+   r,   )r.   ÚkwargsÚ	errortyper>   s       r3   Útest_errorszTestMaxNLocator.test_errors)   s8   € ô �]‰]˜9¨EÔ2ñ 	*Ü×ÑÑ) &Ò)÷	*÷ 	*ñ 	*ús	   ˜7·A zsteps, result)r   r   r!   r!   c                 ón   — t        j                  |¬«      }|j                  |k(  j                  «       sJ ‚y )N)r8   )r+   r,   Ú_stepsÚall)r.   r8   Úresultr2   s       r3   Útest_paddingzTestMaxNLocator.test_padding4   s/   € ô ×!Ñ!¨Ô.ˆØ—
‘
˜fÑ$×)Ñ)Ô+Ð+Ñ+r5   )Ú__name__Ú
__module__Ú__qualname__ÚnpÚarrayÚarangeÚ
basic_dataÚinteger_datar@   ÚmarkÚparametrizer4   r9   Ú	TypeErrorÚreÚescapeÚ
ValueErrorrD   rI   r?   r5   r3   r   r      s÷  „ à	ˆS�(�"—(‘(Ò5Ó6Ð7Ø	�˜˜Ÿ™Ò!LÓMÐNØ	��h�b—h‘hÒJÓKÐLØ	
ˆH�i�b—i‘i “l UÑ*Ð+Ø	�A�y�r—y‘y  QÓ'¨%Ñ/Ð0ð€Jð 
ˆs�D˜(˜"Ÿ(™(¢=Ó1Ð2Ø	ˆt�T˜8˜2Ÿ8™8Ò$DÓEÐFØ	
ˆBÒ" H B§H¡HÒ-@Ó$AÐBð€Lð ‡[�[×ÑÐ3°ZÓ@ñCó AðCð ‡[�[×ÑÐ:¸LÓIñCó JðCð ‡[�[×ÑÐ7Ø
�ˆ�YØ	ˆ�‰ÐJÓ	Kð	Mà
�A�q�6Ð	˜JÐ(NÐOØ
�1ˆ�zÐ#IÐJØ
�A�r�7Ð	˜ZÐ)OÐPð:ó ñ*óð*ð ‡[�[×Ñ˜_Ú	’ZÐ Ø
ˆRˆ’*ÐØ
ˆQˆ’ÐØ
ˆŠjÐð	/ó ñ,óñ,r5   r   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚTestLinearLocatorc                 ó–   — t        j                  d¬«      }t        j                  g d¢«      }t	        |j                  dd«      |«       y )Né   ©Únumticks)çš™™™™™é¿ç333333Ó¿çš™™™™™É?r^   r`   )r+   ÚLinearLocatorrM   rN   r   r-   ©r.   r2   Ú
test_values      r3   r4   zTestLinearLocator.test_basic@   s6   € Ü×#Ñ#¨QÔ/ˆÜ—X‘XÒ/Ó0ˆ
Ü˜CŸO™O¨D°#Ó6¸
ÕCr5   c                 óZ   — t        j                  d¬«      }|j                  dd«      g k(   y )Nr   r\   r^   r`   )r+   ra   r-   ©r.   r2   s     r3   Útest_zero_numticksz$TestLinearLocator.test_zero_numticksE   s%   € Ü×#Ñ#¨QÔ/ˆØ�‰˜˜cÓ" bÓ(r5   c                 ó¢   — t        j                  d¬«      }|j                  ddg i¬«       |j                  dk(  sJ ‚|j                  dg ik(  sJ ‚y)z 
        Create linear locator with presets={}, numticks=2 and change it to
        something else. See if change was successful. Should not exception.
        r   r\   é   ©r   r   )r]   ÚpresetsN)r+   ra   Ú
set_paramsr]   rj   re   s     r3   Útest_set_paramsz!TestLinearLocator.test_set_paramsI   sP   € ô
 ×#Ñ#¨QÔ/ˆØ�‰ ¨F°B¨<ˆÔ8Ø�|‰|˜qÒ Ð Ð Ø�{‰{˜v r˜lÒ*Ð*Ñ*r5   c                 óz  — t        j                  g d¢ddgdœ¬«      }|j                  dd«      g d¢k(  sJ ‚|j                  dd«      g d¢k(  sJ ‚|j                  dd«      ddgk(  sJ ‚|j                  d	d
«      ddgk(  sJ ‚|j                  dd«      t        j                  ddd«      k(  j                  «       sJ ‚y )N)r   ç      ô?ç      ü?r   r   ))r   r   ©r   r   )rj   r   r   r   r   ç       @r;   )r+   ra   r-   rM   ÚlinspacerG   re   s     r3   Útest_presetszTestLinearLocator.test_presetsS   s½   € Ü×#Ñ#²_Ø69¸3°Zñ-Aô Bˆà�‰˜q !Ó$ªÒ7Ð7Ð7Ø�‰˜q !Ó$ªÒ7Ð7Ð7Ø�‰˜q !Ó$¨¨c¨
Ò2Ð2Ð2Ø�‰˜s CÓ(¨S°#¨JÒ6Ð6Ð6Ø—‘  1Ó%¬¯©°Q¸¸2Ó)>Ñ>×CÑCÔEÐEÑEr5   N)rJ   rK   rL   r4   rf   rl   rs   r?   r5   r3   rY   rY   ?   s   „ òDò
)ò+óFr5   rY   c                   ó0   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestMultipleLocatorc                 ó–   — t        j                  d¬«      }t        j                  g d¢«      }t	        |j                  dd«      |«       y )Nç“V-	@©Úbase)goƒÀÊá"Àç“V-Àg“V-	Àr   rw   ç“V-@goƒÀÊá"@g“V-)@éùÿÿÿr!   ©r+   ÚMultipleLocatorrM   rN   r   r-   rb   s      r3   r4   zTestMultipleLocator.test_basic^   s:   € Ü×%Ñ%¨5Ô1ˆÜ—X‘Xò .ó /ˆ
ä˜CŸO™O¨B°Ó3°ZÕ@r5   c                 ó˜   — t        j                  dd¬«      }t        j                  g d¢«      }t	        |j                  dd«      |«       y )Nrw   ç333333ó?©ry   Úoffset)g¬Zd{ ÀgÇK7‰A`ÀgôýÔxé&ÿ¿r€   gÙÎ÷Sc@g`åÐ"Ûù@gÕxé&1H%@r|   r!   r}   rb   s      r3   Útest_basic_with_offsetz*TestMultipleLocator.test_basic_with_offsetd   s<   € Ü×%Ñ%¨5¸Ô=ˆÜ—X‘Xò 'ó (ˆ
ä˜CŸO™O¨B°Ó3°ZÕ@r5   c                 óÀ   — t        j                  ddi«      5  t        j                  d¬«      }t	        |j                  dd«      d«       ddd«       y# 1 sw Y   yxY w)	z5
        Test basic behavior of view limits.
        úaxes.autolimit_modeÚdatarw   rx   r   r    )r   r    N©ÚmplÚ
rc_contextr+   r~   r   Úview_limitsre   s     r3   Útest_view_limitsz$TestMultipleLocator.test_view_limitsj   sT   € ô �^‰^Ð2°FÐ;Ó<ñ 	AÜ×)Ñ)¨uÔ5ˆCÜ §¡°°AÓ 6¸Ô@÷	A÷ 	Añ 	Aúó   ˜3AÁAc                 óÀ   — t        j                  ddi«      5  t        j                  d¬«      }t	        |j                  dd«      d«       ddd«       y# 1 sw Y   yxY w)	úb
        Test that everything works properly with 'round_numbers' for auto
        limit.
        r…   Úround_numbersrw   rx   éüÿÿÿé   )rz   r{   Nr‡   re   s     r3   Útest_view_limits_round_numbersz2TestMultipleLocator.test_view_limits_round_numbersr   sT   € ô
 �^‰^Ð2°OÐDÓEñ 	IÜ×)Ñ)¨uÔ5ˆCÜ §¡°°AÓ 6¸ÔH÷	I÷ 	Iñ 	IúrŒ   c                 óÂ   — t        j                  ddi«      5  t        j                  dd¬«      }t	        |j                  dd«      d«       d	d	d	«       y	# 1 sw Y   y	xY w)
rŽ   r…   r�   rw   çÍÌÌÌÌÌô?r�   r�   r‘   )g`åÐ"ÛùÀg}?5^ºÉ@Nr‡   re   s     r3   Ú*test_view_limits_round_numbers_with_offsetz>TestMultipleLocator.test_view_limits_round_numbers_with_offset{   sV   € ô
 �^‰^Ð2°OÐDÓEñ 	IÜ×)Ñ)¨u¸SÔAˆCÜ §¡°°AÓ 6¸ÔH÷	I÷ 	Iñ 	Iús   ˜4AÁAc                 óÐ   — t        j                  d¬«      }|j                  d¬«       |j                  j                  dk(  sJ ‚|j                  d¬«       |j
                  dk(  sJ ‚y)z
        Create multiple locator with 0.7 base, and change it to something else.
        See if change was successful.
        çffffffæ?rx   ç333333û?r[   )r‚   N)r+   r~   rk   Ú_edgeÚstepÚ_offset)r.   Úmults     r3   rl   z#TestMultipleLocator.test_set_params„   sX   € ô
 ×&Ñ&¨CÔ0ˆØ�‰˜SˆÔ!Ø�z‰z�‰ #Ò%Ð%Ð%Ø�‰˜qˆÔ!Ø�|‰|˜qÒ Ð Ñ r5   N)	rJ   rK   rL   r4   rƒ   r‹   r’   r•   rl   r?   r5   r3   ru   ru   ]   s%   „ òAòAòAòIòIó	!r5   ru   c            
       ó˜  — e Zd Zd„ ZddgZd„ Zej                  j                  de«      d„ «       Z	g d¢Z
d„ Zej                  j                  d	e
«      d
„ «       Zg d¢Zg d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gZ e eee«      «      Zej                  j                  de«      d„ «       Zej                  j                  dddg«      ej                  j                  ddg d¢fdg d¢fg«      d„ «       «       Zej                  j                  dddg«      ej                  j                  dddg d¢fd d!g d"¢fd#d$g d%¢fg«      d&„ «       «       Zy')(ÚTestAutoMinorLocatorc                 óð   — t        j                  «       \  }}|j                  dd«       |j                  «        t	        j
                  g d¢«      }t        |j                  j                  d¬«      |«       y )Nr   ç=
×£p=ö?©çš™™™™™©?çš™™™™™¹?g333333Ã?r   ç333333Ó?gffffffÖ?çÍÌÌÌÌÌÜ?r   çš™™™™™á?gÍÌÌÌÌÌä?r—   r   g333333ë?çÍÌÌÌÌÌì?r   çÍÌÌÌÌÌð?r   gffffffò?rn   r”   gš™™™™™õ?T©Úminor)	ÚpltÚsubplotsÚset_xlimÚminorticks_onrM   rN   r   ÚxaxisÚget_ticklocs©r.   ÚfigÚaxrc   s       r3   r4   zTestAutoMinorLocator.test_basic‘   s^   € Ü—,‘,“.‰ˆˆRØ
�‰�A�tÔØ
×ÑÔÜ—X‘Xò Gó Hˆ
ô 	˜BŸH™H×1Ñ1¸Ð1Ó=¸zÕJr5   ©r   r   )r   r   c                 óÈ  — t        j                  «       \  }}|j                  dd«       |j                  j	                  t        j                  «       «       t        j                  g d¢«      }t        |j                  j                  d¬«      |«       |j                  dd«       t        j                  g d¢«      }t        |j                  j                  d¬«      |«       y	)
zI
        Test that first and last minor tick appear as expected.
        çffffffþ¿çffffffþ?) r¶   gÍÌÌÌÌÌü¿ç333333û¿gš™™™™™ù¿gffffffö¿gÍÌÌÌÌÌô¿g333333ó¿çš™™™™™ñ¿gÍÌÌÌÌÌì¿r^   gffffffæ¿g333333ã¿çš™™™™™Ù¿r_   çš™™™™™É¿r   r£   r`   r¤   çš™™™™™Ù?ç333333ã?r—   çš™™™™™é?r§   r   r€   r”   gffffffö?gš™™™™™ù?r˜   gÍÌÌÌÌÌü?r·   Tr©   r   r    )g      Àg      Àg      Àg      Àg      Àg      ø¿ç      ð¿ç      à¿r   r   r   ç      @g      @ç      @g      @ç      @N)r«   r¬   r­   r¯   Úset_minor_locatorr+   ÚAutoMinorLocatorrM   rN   r   r°   r±   s       r3   Útest_first_and_last_minorticksz3TestAutoMinorLocator.test_first_and_last_minorticks    s®   € ô
 —,‘,“.‰ˆˆRØ
�‰�D˜#ÔØ
�‰×"Ñ"¤7×#;Ñ#;Ó#=Ô>Ü—X‘Xò Bó Cˆ
ô 	˜BŸH™H×1Ñ1¸Ð1Ó=¸zÔJà
�‰�B˜ÔÜ—X‘Xò Gó Hˆ
ä˜BŸH™H×1Ñ1¸Ð1Ó=¸zÕJr5   z%nb_majorticks, expected_nb_minorticksc                 óv  — t        j                  «       \  }}d} |j                  |Ž  |j                  t	        j
                  |d   |d   |«      «       |j                  «        |j                  j                  t        j                  «       «       t        |j                  j                  «       «      |k(  sJ ‚y )N)r   r    r   r   )r«   r¬   r­   Ú
set_xticksrM   rr   r®   r¯   rÄ   r+   rÅ   ÚlenÚget_minorticklocs)r.   Únb_majorticksÚexpected_nb_minorticksr²   r³   Úxlimss         r3   Útest_low_number_of_majorticksz2TestAutoMinorLocator.test_low_number_of_majorticks³   s�   € ô —,‘,“.‰ˆˆRØˆØˆ�‰�UÑØ
�‰”b—k‘k %¨¡(¨E°!©H°mÓDÔEØ
×ÑÔØ
�‰×"Ñ"¤7×#;Ñ#;Ó#=Ô>Ü�2—8‘8×-Ñ-Ó/Ó0Ð4JÒJÐJÑJr5   ))r   r    )r   r‘   )rÁ   r    )r    r    )r!   r    c                 ó  — t        j                  ddi«      5  | j                  D �cg c]  }|d   ‘Œ	 }}t        j                  j                  |t        j                  «       j                  «       d d d «       y c c}w # 1 sw Y   y xY w)Nú_internal.classic_modeFr   )	rˆ   r‰   Úmajorstep_minordivisionsrM   ÚtestingÚassert_allcloser+   ÚAutoLocatorrF   )r.   ÚxÚ
majorstepss      r3   Ú"test_using_all_default_major_stepsz7TestAutoMinorLocator.test_using_all_default_major_stepsÇ   sz   € Ü�^‰^Ð5°uÐ=Ó>ñ 	EØ(,×(EÑ(EÖF 1˜!˜A›$ÐFˆJÐFÜ�J‰J×&Ñ& zÜ'.×':Ñ':Ó'<×'CÑ'CôE÷	Eð 	EùÚF÷	Eð 	Eús   ˜A?§A:³>A?Á:A?Á?Bz&major_step, expected_nb_minordivisionsc                 óN  — t        j                  «       \  }}d|f} |j                  |Ž  |j                  |«       |j	                  «        |j
                  j                  t        j                  «       «       t        |j
                  j                  «       «      dz   }||k(  sJ ‚y ©Nr   r   )r«   r¬   r­   rÈ   r®   r¯   rÄ   r+   rÅ   rÉ   rÊ   )r.   Ú
major_stepÚexpected_nb_minordivisionsr²   r³   rÍ   Únb_minor_divisionss          r3   Útest_number_of_minor_ticksz/TestAutoMinorLocator.test_number_of_minor_ticksÍ   s‰   € ô —,‘,“.‰ˆˆRØ�J�ˆØˆ�‰�UÑØ
�‰�eÔØ
×ÑÔØ
�‰×"Ñ"¤7×#;Ñ#;Ó#=Ô>Ü  §¡×!;Ñ!;Ó!=Ó>ÀÑBÐØ!Ð%?Ò?Ð?Ñ?r5   )©r   r    ©r   g˜nƒÀÊÁ?)r   ç�Ô�ùÉ;)r   g¦ÖVs†?=)gH¯¼šò×Š¾gIhG|·a¾)gvƒôõ!´>ç�Ûí‚ÚÒ·>)çÍÒÊ”A{¶¾çÁ�v¾À(¸¾)g"s2_Èd­¾glEÕŽfU¹¾r¡   )ç{®Gázt?ç{®Gáz„?ç¸…ëQ¸Ž?gš™™™™™™?g¸…ëQ¸ž?gìQ¸…ë¡?g
×£p=
§?r¢   g)\�Âõ(¬?g¤p=
×£°?gìQ¸…ë±?g333333³?gÃõ(\�Âµ?g
×£p=
·?gR¸…ëQ¸?gáz®Gáº?ç)\�Âõ(¼?gq=
×£p½?ç      À?g¤p=
×£À?gHáz®GÁ?)gO›
´ã‚;gO›
´ã’;g÷èŽUœ;g#B’¡œ§;g÷èŽU¬;gæÇÌˆ=‡°;g¹nP‹*@µ;g#B’¡œ·;g�Ô�ù¹;ga¼W�²¾;gæÇÌˆ=‡À;g›±mÉxµÁ;g…¯JïÄ;g¹nP‹*@Å;gnXñËenÆ;gØ+3MÜÊÈ;rà   )g›+¡†›„ö<g›+¡†›„=g´àø¤tã=g‚vIhÂ%=g´àø¤tã =g(Í´#=gQu÷.U)=g‚vIhÂ%,=gõ›ÙUö.=gnób]¾K2=g(Í´3=gá7ÎQ5=gU>?åì7=gQu÷.U9=gÈcß¯x½:=g;‰³ Ž==gõ›ÙUö>=)gç*«#&,Š¾g…¦™¬Y€‰¾g#"ˆ5�Ôˆ¾g_eGô|‡¾gý”SÐ'Ñ†¾gœBY[%†¾gØkÂÍ„¾gvƒôõ!„¾gÿû|)vƒ¾gQöØŽ�‚¾gïqÇÄr�¾g�íµ ÷Æ€¾g“É%e½Þ~¾gÐÀw$‡}¾g¸ßˆ‹/|¾g…¦™¬Y€y¾gÁ�v¾À(x¾gý”SÐ'Ñv¾gvƒôõ!t¾g³zê]Êr¾gïqÇÄrq¾gÐÀw$‡m¾gH¯¼šò×j¾gÁ�v¾À(h¾g³zê]Êb¾)g�äÑéL´>g§E–/Üw´>gÀ¦ZMÏ¢´>gØkÂÍ´>g	Ê§¦¨#µ>g!+lÄ›Nµ>g:Œ0âŽyµ>gRíôÿ�¤µ>gƒ¯};húµ>gœBY[%¶>g´qwNP¶>gÍÒÊ”A{¶>gý”SÐ'Ñ¶>göîü¶>g.WÜ'·>gG¸ )R·>gxz)eç§·>rá   )g5m”/G¸¾g©<² Íý·¾gÐTè·¾g«ô`½·¾gxz)eç§·¾gìIGÖm’·¾gÓè‚¸zg·¾gG¸ )R·¾g»‡¾š‡<·¾g¢&ú|”·¾göîü¶¾gŠÅ5_¡æ¶¾gqdqA®»¶¾gå3�²4¦¶¾gY­#»�¶¾)g#"ˆ5�Ô¸¾gò_ÿù¦~¸¾rã   g�Ûí‚ÚÒ·¾g.WÜ'·¾gý”SÐ'Ñ¶¾râ   gœBY[%¶¾g:Œ0âŽyµ¾g	Ê§¦¨#µ¾gØkÂÍ´¾g§E–/Üw´¾gEÁ„¸Ì³¾gÿû|)v³¾gä<sAC ³¾g³zê]Ê²¾gQöØŽ�²¾g 4PSªÈ±¾gïqÇÄr±¾g¾¯>ÜÝ±¾g\+-eq°¾g+i¤)+°¾gõM7Ü‰Š¯¾g“É%e½Þ®¾gÐÀw$‡­¾zlim, refc                 ó  — t        j                  «       \  }}|j                  «        |j                  dddd¬«       |j                  dddd¬«       |j	                  |«       t        |j                  j                  d¬	«      |«       y )
NTrª   Úyr   )Ú	linewidthÚmajorÚk)Úcolorrë   r©   )r«   r¬   r®   ÚgridÚset_ylimr   Úyaxisr°   )r.   ÚlimÚrefr²   r³   s        r3   Útest_additionalz$TestAutoMinorLocator.test_additionalþ   sm   € ä—,‘,“.‰ˆˆRà
×ÑÔØ
�‰��g˜s¨aˆÔ0Ø
�‰��g S°AˆÔ6Ø
�‰�CÔä˜BŸH™H×1Ñ1¸Ð1Ó=¸sÕCr5   Úuse_rcparamFTrÞ   rß   c                 ó2  — |rdddœ}i }ni }ddi}t        j                  |«      5  t        j                  «       \  }} |j                  |Ž   |j
                  |Ž  |j                  j                  t        j                  di |¤Ž«       |j                  j                  t        j                  di |¤Ž«       t        |j                  j                  d¬«      |«       t        |j                  j                  d¬«      |«       d d d «       y # 1 sw Y   y xY w)NÚauto©zxtick.minor.ndivszytick.minor.ndivsÚnTr©   r?   )rˆ   r‰   r«   r¬   r­   rð   r¯   rÄ   r+   rÅ   rñ   r   r°   )r.   rò   ró   rõ   ÚcontextrB   r²   r³   s           r3   Útest_number_of_minor_ticks_autoz4TestAutoMinorLocator.test_number_of_minor_ticks_auto	  sì   € ñ Ø,2ÈÑPˆGØ‰FàˆGØ˜6�]ˆFä�^‰^˜GÓ$ñ 	HÜ—l‘l“n‰GˆC�ØˆB�K‰K˜ÑØˆB�K‰K˜ÑØ�H‰H×&Ñ&¤w×'?Ñ'?Ñ'IÀ&Ñ'IÔJØ�H‰H×&Ñ&¤w×'?Ñ'?Ñ'IÀ&Ñ'IÔJÜ §¡× 5Ñ 5¸DÐ 5Ó AÀ3ÔGÜ §¡× 5Ñ 5¸DÐ 5Ó AÀ3ÔG÷	H÷ 	Hñ 	Hús   ¦CDÄDzn, lim, refr   )r   r‘   )r   r   rÁ   rÂ   r‘   rp   )r   r   r   rn   r   ro   r!   ri   )	r£   r`   r¤   r¼   r   r½   r—   r¾   r§   c                 óê  — |r||dœ}i }ni }d|i}t        j                  |«      5  t        j                  «       \  }} |j                  |Ž   |j
                  |Ž  |j                  j                  t        j                  d«      «       |j                  j                  t        j                  di |¤Ž«       |j                  j                  t        j                  d«      «       |j                  j                  t        j                  di |¤Ž«       t        |j                  j                  d¬«      |«       t        |j                  j                  d¬«      |«       d d d «       y # 1 sw Y   y xY w)Nrø   rù   r   Tr©   r?   )rˆ   r‰   r«   r¬   r­   rð   r¯   Úset_major_locatorr+   r~   rÄ   rÅ   rñ   r   r°   )	r.   rù   rò   ró   rõ   rú   rB   r²   r³   s	            r3   Útest_number_of_minor_ticks_intz3TestAutoMinorLocator.test_number_of_minor_ticks_int%  s&  € ñ Ø,-ÀAÑFˆGØ‰FàˆGØ˜1�XˆFä�^‰^˜GÓ$ñ 		HÜ—l‘l“n‰GˆC�ØˆB�K‰K˜ÑØˆB�K‰K˜ÑØ�H‰H×&Ñ&¤w×'>Ñ'>¸qÓ'AÔBØ�H‰H×&Ñ&¤w×'?Ñ'?Ñ'IÀ&Ñ'IÔJØ�H‰H×&Ñ&¤w×'>Ñ'>¸qÓ'AÔBØ�H‰H×&Ñ&¤w×'?Ñ'?Ñ'IÀ&Ñ'IÔJÜ §¡× 5Ñ 5¸DÐ 5Ó AÀ3ÔGÜ §¡× 5Ñ 5¸DÐ 5Ó AÀ3ÔG÷		H÷ 		Hñ 		Hús   ¦D:E)Å)E2N)rJ   rK   rL   r4   ÚparamsrÆ   r@   rR   rS   rÎ   rÑ   r×   rÝ   ÚlimitsÚ	referenceÚlistÚzipÚadditional_datarô   rû   rþ   r?   r5   r3   rž   rž   �   sÂ  „ òKð 	Øð€Fò
Kð& ‡[�[×ÑÐDÀfÓMñ	Kó Nð	Kò )ÐòEð ‡[�[×ÑÐEØ5ó7ñ	@ó7ð	@ò>€Fò	Bò	ò	'ò	'ò	ò
	1ò	Eò	ð/€Iñ: ™3˜v yÓ1Ó2€Oà‡[�[×Ñ˜Z¨Ó9ñDó :ðDð ‡[�[×Ñ˜]¨U°D¨MÓ:Ø‡[�[×ÑØØòGðHð ò"ð#ð	
ó	ñHó	ó ;ðHð" ‡[�[×Ñ˜]¨U°D¨MÓ:Ø‡[�[×ÑØØ�Ò,Ð-Ø�Ò:Ð;Ø�ÒFÐGð
óñHóó ;ñHr5   rž   c                   ó6   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)	ÚTestLogLocatorc                 ó¨  — t        j                  d¬«      }t        j                  t        «      5  |j                  dd«       d d d «       t        j                  g d¢«      }t        |j                  dd«      |«       t        j                  d¬	«      }t        j                  g d
¢«      }t        |j                  dd«      |«       y # 1 sw Y   Œ†xY w)Nr    r\   r   éè  )çñhãˆµøä>r   r£   ç      $@ç     @�@ç     jø@ç    ÐcAç    eÍÍAr   g     Ûú@r   rx   )
r   r   rq   ç      @g       @g      0@g      @@g      P@g      `@g      p@r   r	   )	r+   Ú
LogLocatorr@   rA   rW   r-   rM   rN   r   rb   s      r3   r4   zTestLogLocator.test_basicA  s£   € Ü× Ñ ¨!Ô,ˆÜ�]‰]œ:Ó&ñ 	%Ø�O‰O˜A˜tÔ$÷	%ô —X‘Xò @ó Aˆ
ô 	˜CŸO™O¨E°5Ó9¸:ÔFä× Ñ  aÔ(ˆÜ—X‘XÒNÓOˆ
Ü˜CŸO™O¨A¨sÓ3°ZÕ@÷	%ð 	%ús   °CÃCc                 ó¸   — t        j                  ddi¬«      \  }}|j                  d«       |j                  dd«       t	        |j                  «       g d¢«       y)	z<
        Polar axes have a different ticking logic.
        Ú
projectionÚpolar)Ú
subplot_kwÚlogr   r	   )r!   r	   r  N)r«   r¬   Ú
set_yscalerð   r   Ú
get_yticks©r.   r²   r³   s      r3   Útest_polar_axeszTestLogLocator.test_polar_axesO  sE   € ô —,‘,¨<¸Ð*AÔB‰ˆˆRØ
�‰�eÔØ
�‰�A�sÔÜ˜2Ÿ=™=›?ªOÕ<r5   c                 ó  — t        j                  d¬«      }t        |j                  dd«      g d¢«       t        j                  t	        j
                  dd«      ¬«      }d|j                  d	d
«      vsJ ‚d|j                  d	d
«      vsJ ‚y )NrG   ©Úsubsr¥   r¦   )g)\�Âõ(Ü?gq=
×£pÝ?g¸…ëQ¸Þ?r   g¤p=
×£à?gHáz®Gá?gìQ¸…ëá?r   r!   r   r§   r
   r
  )r+   r  r   r-   rM   rO   re   s     r3   Útest_switch_to_autolocatorz)TestLogLocator.test_switch_to_autolocatorX  sz   € Ü× Ñ  eÔ,ˆÜ˜3Ÿ?™?¨4°Ó6ÚDô	Fô × Ñ ¤b§i¡i°°2Ó&6Ô7ˆØ˜#Ÿ/™/¨#¨sÓ3Ñ3Ð3Ð3Ø˜3Ÿ?™?¨3°Ó4Ñ4Ð4Ñ4r5   c                 óÞ  — t        j                  «       }t        j                  t        j
                  d¬«      5  |j                  dddgd¬«       ddd«       |j                  dk(  sJ ‚t        j                  t        j
                  d¬«      5  |j                  dk(  sJ ‚	 ddd«       |j                  dk(  sJ ‚t        |j                  «      dgk(  sJ ‚y# 1 sw Y   Œ‡xY w# 1 sw Y   ŒBxY w)	zÑ
        Create log locator with default value, base=10.0, subs=[1.0],
        numdecs=4, numticks=15 and change it to something else.
        See if change was successful. Should not raise exception.
        Únumdecsr=   é   rh   rq   r‘   )r]   r  r  ry   N)r+   r  r@   Úwarnsrˆ   ÚMatplotlibDeprecationWarningrk   r]   r  Ú_baser  Ú_subsre   s     r3   rl   zTestLogLocator.test_set_paramsa  sÊ   € ô × Ñ Ó"ˆÜ�\‰\œ#×:Ñ:À)ÔLñ 	FØ�N‰N A¨q¸°uÀ1ˆNÔE÷	Fà�|‰|˜qÒ Ð Ð Ü�\‰\œ#×:Ñ:À)ÔLñ 	$Ø—;‘; !Ò#Ð#Ñ#÷	$à�y‰y˜AŠ~Ðˆ~Ü�C—I‘I‹ 3 %Ò'Ð'Ñ'÷	Fð 	Fú÷	$ð 	$ús   ºCÂC#ÃC Ã#C,c                 ó–   — t        j                  d¬«      }t        j                  g d¢«      }t	        |j                  dd«      |«       y )N©r   r   r    r  )r£   r`   r   r   rq   rÃ   r
  r
   ç      I@r   ç      i@ç     @@r  ç     @Ÿ@ç     ˆ³@ç     ˆÃ@ç     ˆÓ@ç     jè@r  ç     jAç    €„Aç    €„.Aç    €„>Aç    ÐSAr  ç    ÐsAç    „×‡Aç    „×—Aç    „×§Aç    eÍ½Ar   r  )r+   r  rM   rN   r   r-   ©r.   Úllrc   s      r3   Útest_tick_values_correctz'TestLogLocator.test_tick_values_correctp  s>   € Ü×Ñ YÔ/ˆÜ—X‘Xò Oó Pˆ
ô
 	˜BŸN™N¨1¨cÓ2°JÕ?r5   c                 ó¼   — dt         j                  d<   t        j                  d¬«      }t	        j
                  g d¢«      }t        |j                  dd«      |«       y )NFrÐ   r&  r  )!r£   r`   r   r   rq   rÃ   r
  r
   r'  r   r(  r)  r  r*  r+  r,  r-  r.  r  r/  r0  r1  r2  r3  r  r4  r5  r6  r7  r8  r  g    eÍÝAg    _ òAr   r6  )rˆ   ÚrcParamsr+   r  rM   rN   r   r-   r9  s      r3   Útest_tick_values_not_emptyz)TestLogLocator.test_tick_values_not_emptyy  sK   € Ø16Œ�‰Ð-Ñ.Ü×Ñ YÔ/ˆÜ—X‘Xò 7ó 8ˆ
ô 	˜BŸN™N¨1¨cÓ2°JÕ?r5   c                 ó  — t         j                  j                  d«      }|j                  d¬«      g g g}t	        j
                  t        |«      dd¬«      \  }}t        |j                  «       |«      D ]+  \  }}|j                  |d¬«       |j                  dd	¬
«       Œ- |j                  «       D ]W  }t        |j                  «       |d   j                  «       k(  «      sJ ‚|j                  «       |d   j                  «       k(  rŒWJ ‚ y )Ni!N,r	   )ÚsizeT)ÚsharexÚshareyr!   )Úbinsr  Úclip)Únonpositiver   )rM   ÚrandomÚdefault_rngÚnormalr«   r¬   rÉ   r  ÚflattenÚhistr  rG   r  Úget_ylim)r.   ÚrngÚ
dummy_datar²   Úaxesr³   r†   s          r3   Útest_multiple_shared_axesz(TestLogLocator.test_multiple_shared_axes„  så   € Ü�i‰i×#Ñ# HÓ-ˆØ—j‘j c�jÓ*¨B°Ð3ˆ
Ü—L‘L¤ Z£¸ÀdÔK‰	ˆˆTä˜DŸL™L›N¨JÓ7ò 	5‰HˆB�Ø�G‰G�D˜rˆGÔ"Ø�M‰M˜%¨VˆMÕ4ð	5ð —,‘,“.ò 	7ˆBÜ�r—}‘}“¨$¨q©'×*<Ñ*<Ó*>Ñ>Ô?Ð?Ð?Ø—;‘;“= D¨¡G×$4Ñ$4Ó$6Ó6Ð6Ð6ñ	7r5   N)
rJ   rK   rL   r4   r  r  rl   r;  r>  rO  r?   r5   r3   r  r  @  s(   „ òAò=ò5ò(ò@ò	@ó7r5   r  c                   ó   — e Zd Zd„ Zy)ÚTestNullLocatorc                 ó¨   — t        j                  «       }t        j                  t        «      5  |j                  «        ddd«       y# 1 sw Y   yxY w)zˆ
        Create null locator, and attempt to call set_params() on it.
        Should not exception, and should raise a warning.
        N)r+   ÚNullLocatorr@   r!  ÚUserWarningrk   re   s     r3   rl   zTestNullLocator.test_set_params“  s=   € ô
 ×!Ñ!Ó#ˆÜ�\‰\œ+Ó&ñ 	Ø�N‰NÔ÷	÷ 	ñ 	ús   ®AÁAN©rJ   rK   rL   rl   r?   r5   r3   rQ  rQ  ’  s   „ ór5   rQ  c                   ó,   — e Zd Zed„ «       Zed„ «       Zy)Ú_LogitHelperc                 óÒ   — d| cxk  rdk  r[n nXd|cxk  rdk  rMn nJt        j                  t        j                  d| z  dz
  «       t        j                  d|z  dz
  «       «      S dS )Nr   r   F)rM   Úiscloser  )rÕ   rê   s     r3   rY  z_LogitHelper.isclosež  sZ   € ð �q”9˜1•9  Q¤¨¥ô —
‘
œBŸF™F 1 Q¡3 q¡5›M˜>¬B¯F©F°1°Q±3°q±5«M¨>Ó:ð 	7Ø05ð	7r5   c                 ó¨  — t        j                  | «      }t        j                  |«      }t        j                  |dkD  «      rt        j                  |dk  «      sJ ‚t        j                  |dkD  «      rt        j                  |dk  «      sJ ‚t        j                  d|z  dz
  «       }t        j                  d|z  dz
  «       }t	        ||«       y rÙ   )rM   rN   rG   r  r   )rÕ   rê   r³   ÚayÚlxÚlys         r3   r   z _LogitHelper.assert_almost_equal£  sš   € ä�X‰X�a‹[ˆÜ�X‰X�a‹[ˆÜ�v‰v�b˜1‘fŒ~¤"§&¡&¨¨a©¤.Ð0Ð0Ü�v‰v�b˜1‘fŒ~¤"§&¡&¨¨a©¤.Ð0Ð0Ü�f‰f�Q�r‘T˜!‘V‹nˆ_ˆÜ�f‰f�Q�r‘T˜!‘V‹nˆ_ˆÜ˜B Õ#r5   N)rJ   rK   rL   ÚstaticmethodrY  r   r?   r5   r3   rW  rW  �  s(   „ Øñ7ó ð7ð ñ$ó ñ$r5   rW  c                   ó,  — e Zd Zg d¢Zdd ej
                  dd«      z  z  dd ej
                  dd«      z  z  dd ej
                  dd«      z  z  dd ej
                  dd«      z  z  dd ej
                  dd«      z  z  dd ej
                  dd	«      z  z  dd ej
                  dd
«      z  z  dd ej
                  dd«      z  z  gZg d¢Zej                  j                  d eee«      «      d„ «       Zej                  j                  de«      d„ «       Zej                  j                  deez   «      d„ «       Zej                  j                  d eee«      «      d„ «       Zd„ Zg d ej
                  dd«      z  ¢dd ej
                  dd«      z  z
  ¢Zej                  j                  d ej&                  ed¬«      D � ��cg c]  \  }}||k7  r||f‘Œ c}}} «      d„ «       Zej                  j                  de«      d„ «       Zyc c}}} w )ÚTestLogitLocator)©r¢   r   )rä   g×£p=
×ï?)gü©ñÒMb@?g–C‹lçûï?©ç-Cëâ6
?g�St$—ÿï?)gñhãˆµøÔ>gŽ;¥ƒõÿï?)g�íµ ÷Æ >gõ…�óþÿï?©gH¯¼šò×j>ge(åÿÿï?)g:Œ0âŽy5>g$ÎPýÿÿï?r   r!   r[   r‘   r    r   r   rh   é	   ))r¼   r½   )r¢   r`   )r¾   r   zlims, expected_low_ticksc                 óž   — t        g |¢d‘d|z
  ¢«      }t        j                  d¬«      }t        j	                   |j
                  |Ž |«       y)zR
        Create logit locator with huge number of major, and tests ticks.
        r   r   r	   r(   N)Úsortedr+   ÚLogitLocatorrW  r   r-   )r.   ÚlimsÚexpected_low_ticksÚexpected_ticksr2   s        r3   Útest_basic_majorz!TestLogitLocator.test_basic_majorÇ  sX   € ô  ØAÐ ÐA #ÐA¨Ð-?Ñ)?ÐAó
ˆô ×"Ñ"¨Ô-ˆÜ×(Ñ(ØˆC�O‰O˜TÐ"Øõ	
r5   ri  c                 óT  — t        j                  d¬«      }t        j                  dg d¢¬«      }dD ]t  }|j                  |¬«       |j                  |¬«        |j                  |Ž } |j                  |Ž }|j
                  |j
                  k(  sJ ‚||k(  j                  «       rŒtJ ‚ y)zj
        When the axis is zoomed, the locator must have the same behavior as
        MaxNLocator.
        r	   r(   )r   r   r    r!   )r)   r8   )r‘   rh   é   N)r+   rh  r,   rk   r-   ÚshaperG   )r.   ri  r2   Úmaxn_locr)   ÚticksÚ
maxn_tickss          r3   Útest_maxn_majorz TestLogitLocator.test_maxn_majorØ  s¥   € ô ×"Ñ"¨Ô-ˆÜ×&Ñ&¨SºÔFˆØò 	/ˆEØ�N‰N ˆNÔ'Ø×Ñ eÐÔ,Ø#�C—O‘O TÐ*ˆEØ-˜×-Ñ-¨tÐ4ˆJØ—;‘; *×"2Ñ"2Ò2Ð2Ð2Ø˜ZÑ'×,Ñ,Õ.Ð.Ð.ñ	/r5   c                 ó.  — t        t        j                  t        j                  |d   «      «       «      dz  dz   }t	        j
                  d¬«      }t        |dd«      D ]4  }|j                  |¬«       t         |j                  |Ž «      |dz   k  rŒ4J ‚ y)zB
        Assert logit locator for respecting nbins param.
        r   r   r   r	   r(   r   N)
ÚintrM   ÚfloorÚlog10r+   rh  Úrangerk   rÉ   r-   )r.   ri  Úbasic_neededr2   r)   s        r3   Útest_nbins_majorz!TestLogitLocator.test_nbins_majorè  s‰   € ô œBŸH™H¤R§X¡X¨d°1©gÓ%6Ó7Ð7Ó8¸1Ñ<¸qÑ@ˆÜ×"Ñ"¨Ô-ˆÜ˜<¨¨BÓ/ò 	<ˆEØ�N‰N ˆNÔ'Ü��s—‘¨Ð-Ó.°%¸!±)Ó;Ð;Ð;ñ	<r5   c                 óø  — t        g |¢d‘d|z
  ¢«      }t        |«      }t        j                  d¬«      }t        j                  dd¬«      }t	        |dd«      D ]ž  }|j                  |¬«       |j                  |¬«        |j                  |Ž } |j                  |Ž }	t        |«      t        |«      k\  r t        |«      dz
  d	z  t        |	«      k  rŒzJ ‚t        j                  t        g |¢|	¢«      |«       Œ  y
)zt
        In large scale, test the presence of minor,
        and assert no minor when major are subsampled.
        r   r   r	   r(   T)r)   rª   r   r   r    N)	rg  rÉ   r+   rh  rx  rk   r-   rW  r   )
r.   ri  rj  rk  ry  r2   Ú	minor_locr)   Úmajor_ticksÚminor_tickss
             r3   Ú
test_minorzTestLogitLocator.test_minorô  s
  € ô  ØAÐ ÐA #ÐA¨Ð-?Ñ)?ÐAó
ˆô ˜>Ó*ˆÜ×"Ñ"¨Ô-ˆÜ×(Ñ(¨s¸$Ô?ˆ	Ü˜<¨¨BÓ/ò 	JˆEØ�N‰N ˆNÔ'Ø× Ñ  uÐ Ô-Ø)˜#Ÿ/™/¨4Ð0ˆKØ/˜)×/Ñ/°Ð6ˆKÜ�;Ó¤3 ~Ó#6Ò6ä˜KÓ(¨1Ñ,°Ñ1´C¸Ó4DÓDÐDÐDô ×0Ñ0ÜÐ7˜[Ð7¨;Ð7Ó8¸.õJñ	Jr5   c                 ó¶   — t        j                  d¬«      }|j                  rJ ‚d|_        |j                  sJ ‚|j                  d¬«       |j                  rJ ‚y )Nr	   r(   TFr©   )r+   rh  rª   rk   re   s     r3   Útest_minor_attrz TestLogitLocator.test_minor_attr  sM   € Ü×"Ñ"¨Ô-ˆØ—9’9Ðˆ}ØˆŒ	Ø�yŠyÐˆyØ�‰˜UˆÔ#Ø—9’9Ðˆ}�9r5   rÁ   éýÿÿÿr   r   )Úrepeatc                 ó|   — t        j                  «       } |j                  |Ž }t        |«      t        |«      k(  sJ ‚y)zd
        Create logit locator, and test the nonsingular method for acceptable
        value
        N)r+   rh  Únonsingularrg  )r.   ri  r2   Úlims2s       r3   Útest_nonsingular_okz$TestLogitLocator.test_nonsingular_ok  s8   € ô ×"Ñ"Ó$ˆØ�—‘ Ð&ˆÜ�d‹|œv e›}Ò,Ð,Ñ,r5   Úokvalc                 óì   — t        j                  «       }d|}}|j                  ||«      \  }}||k(  sJ ‚d|cxk  r|k  sJ ‚ J ‚|d}}|j                  ||«      \  }}||k(  sJ ‚||cxk  rdk  sJ ‚ J ‚y)zh
        Create logit locator, and test the nonsingular method for non
        acceptable value
        r   r   r   r   N)r+   rh  r…  )r.   rˆ  r2   r/   r0   Úvmin2Úvmax2s          r3   Útest_nonsingular_nokz%TestLogitLocator.test_nonsingular_nok/  s–   € ô ×"Ñ"Ó$ˆØ˜%ˆdˆØ—‘ t¨TÓ2‰ˆˆuØ˜Š}Ðˆ}Ø�5Ô ˜5Ò Ð Ñ Ð Ð Ø˜QˆdˆØ—‘ t¨TÓ2‰ˆˆuØ˜Š}Ðˆ}Ø�uÔ ˜qÒ Ð Ñ Ð Ñ r5   N)rJ   rK   rL   Úref_basic_limitsrM   rO   Úref_basic_major_ticksÚref_maxn_limitsr@   rR   rS   r  rl  rs  rz  r  r�  Úacceptable_vmin_vmaxÚ	itertoolsÚproductr‡  rŒ  )Ú.0ÚaÚbs   000r3   r`  r`  ®  sm  „ ò	Ðð 	
ˆR�9�2—9‘9˜Q “?Ñ"Ñ#Ø	ˆR�9�2—9‘9˜Q “?Ñ"Ñ#Ø	ˆR�9�2—9‘9˜Q “?Ñ"Ñ#Ø	ˆR�9�2—9‘9˜Q “?Ñ"Ñ#Ø	ˆR�9�2—9‘9˜Q “?Ñ"Ñ#Ø	ˆR�9�2—9‘9˜Q “?Ñ"Ñ#Ø	ˆR�9�2—9‘9˜Q “?Ñ"Ñ#Ø	ˆR�9�2—9‘9˜Q Ó#Ñ#Ñ$ð	Ðò G€Oà‡[�[×ÑØ"ÙÐÐ3Ó4óñ
ó	ð
ð ‡[�[×Ñ˜V _Ó5ñ/ó 6ð/ð ‡[�[×Ñ˜VÐ%5¸Ñ%GÓHñ	<ó Ið	<ð ‡[�[×ÑØ"ÙÐÐ3Ó4óñJó	ðJò2ðØ
��—‘˜2˜qÓ!Ñ
!ðà
ˆc�Y�R—Y‘Y˜r 1Ó%Ñ%Ñ
%ðÐð
 ‡[�[×ÑØð ,˜)×+Ñ+Ð,@ÈÔK÷	
ð 	
á��AØ�AŠvð �ŠFô	
óñ-óð-ð ‡[�[×Ñ˜WÐ&:Ó;ñ!ó <ñ!ùô!	
s   Ç
Hr`  c                   ó   — e Zd Zd„ Zy)ÚTestFixedLocatorc                 óŒ   — t        j                  t        dd«      d¬«      }|j                  d¬«       |j                  dk(  sJ ‚y)z™
        Create fixed locator with 5 nbins, and change it to something else.
        See if change was successful.
        Should not exception.
        r   é   r    r(   r   N)r+   ÚFixedLocatorrx  rk   r)   )r.   Úfixeds     r3   rl   z TestFixedLocator.test_set_paramsA  s?   € ô ×$Ñ$¤U¨1¨b£\¸Ô;ˆØ×Ñ˜qÐÔ!Ø�{‰{˜aÒÐÑr5   NrU  r?   r5   r3   r—  r—  @  s   „ ó r5   r—  c                   ó   — e Zd Zd„ Zy)ÚTestIndexLocatorc                 óœ   — t        j                  dd¬«      }|j                  dd¬«       |j                  dk(  sJ ‚|j                  dk(  sJ ‚y)z¢
        Create index locator with 3 base, 4 offset. and change it to something
        else. See if change was successful.
        Should not exception.
        r[   r‘   r�   r   N)r+   ÚIndexLocatorrk   r#  r‚   )r.   Úindexs     r3   rl   z TestIndexLocator.test_set_paramsM  sM   € ô ×$Ñ$¨!°AÔ6ˆØ×Ñ˜a¨ÐÔ*Ø�{‰{˜aÒÐÐØ�|‰|˜qÒ Ð Ñ r5   NrU  r?   r5   r3   r�  r�  L  s   „ ó	!r5   r�  c                   óz   — e Zd Zd„ Zej
                  j                  dddddgfddg d¢fg«      d„ «       Zd„ Zd	„ Z	y
)ÚTestSymmetricalLogLocatorc                 ó    — t        j                  dd¬«      }|j                  dgd¬«       |j                  dgk(  sJ ‚|j                  dk(  sJ ‚y)zÅ
        Create symmetrical log locator with default subs =[1.0] numticks = 15,
        and change it to something else.
        See if change was successful.
        Should not exception.
        r!   r   ©ry   Ú	linthreshrq   rh   )r  r]   N)r+   ÚSymmetricalLogLocatorrk   r$  r]   ©r.   Úsyms     r3   rl   z)TestSymmetricalLogLocator.test_set_paramsZ  sN   € ô ×+Ñ+°¸qÔAˆØ�‰˜S˜E¨AˆÔ.Ø�y‰y˜S˜EÒ!Ð!Ð!Ø�|‰|˜qÒ Ð Ñ r5   r&   r   r   r   ©r   r   r   c                 óp   — t        j                  dd¬«      }|j                  ||¬«      }t        ||«       y )Nr!   r   r¤  )r/   r0   )r+   r¦  r-   r   )r.   r/   r0   r1   r¨  rq  s         r3   Útest_valuesz%TestSymmetricalLogLocator.test_valuesf  s2   € ô ×+Ñ+°¸qÔAˆØ—‘ T°�Ó5ˆÜ˜5 (Õ+r5   c                 óÈ   — t        j                  ddddg¬«      }|j                  «        |j                  j	                  dd«        |«       g d¢k(  j                  «       sJ ‚y )Nr!   r   rq   r  )ry   r¥  r  éöÿÿÿ)	g      4Àg      DÀg       Àg      Àr   rq   r  r
   r   )r+   r¦  Úcreate_dummy_axisÚaxisÚset_view_intervalrG   r§  s     r3   Ú	test_subsz#TestSymmetricalLogLocator.test_subss  sT   € Ü×+Ñ+°¸qÈÈSÀzÔRˆØ×ÑÔØ�‰×"Ñ" 3¨Ô+Ù“ÒOÑO×TÑTÔVÐVÑVr5   c                 óº  — t        j                  dd¬«      }|j                  «        |j                  j	                  dd«        |«       dgk(  j                  «       sJ ‚|j                  j	                  dd«        |«       ddgk(  j                  «       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!   r   r¤  rh   re  r   é   r
  )r   r	   r­  )éœÿÿÿr   r   )çü©ñÒMbP¿r   )r+   r¦  r®  r¯  r°  rG   rŠ   r§  s     r3   Útest_extendingz(TestSymmetricalLogLocator.test_extendingy  sÊ   € Ü×+Ñ+°¸qÔAˆØ×ÑÔØ�‰×"Ñ" 1 aÔ(Ù“˜#˜‘×#Ñ#Ô%Ð%Ð%Ø�‰×"Ñ" 1 bÔ)Ù“˜#˜t˜Ñ$×)Ñ)Ô+Ð+Ð+Ø�‰˜r 2Ó&¨(Ò2Ð2Ð2Ø�‰˜s CÓ(¨JÒ6Ð6Ð6Ø�‰˜q !Ó$¨Ò7Ð7Ñ7r5   N)
rJ   rK   rL   rl   r@   rR   rS   r«  r±  r¶  r?   r5   r3   r¢  r¢  Y  sT   „ ò
!ð ‡[�[×ÑØ"à�A˜˜1�v�Ø�Qš
Ð#ðóñ,óð,òWó	8r5   r¢  c                   ó<   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y	)
ÚTestAsinhLocatorc                 ó˜   — t        j                  dd¬«      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚y )NgX9´Èv¾@é   )Úlinear_widthr]   r!   )r+   ÚAsinhLocatorr»  r]   ry   ©r.   Úlctrs     r3   Ú	test_initzTestAsinhLocator.test_init†  sJ   € Ü×#Ñ#°ÀÔDˆØ× Ñ  EÒ)Ð)Ð)Ø�}‰} Ò"Ð"Ð"Ø�y‰y˜BŠÐ‰r5   c                 ó.  — t        j                  ddddd¬«      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j
                  dk(  sJ ‚|j                  d¬«       |j                  dk(  sJ ‚|j                  d «       |j                  dk(  sJ ‚|j                  d	¬
«       |j                  d	k(  sJ ‚|j                  d ¬
«       |j                  d	k(  sJ ‚|j                  d¬«       |j                  dk(  sJ ‚|j                  d ¬«       |j                  dk(  sJ ‚|j                  d¬«       |j
                  dk(  sJ ‚|j                  d ¬«       |j
                  dk(  sJ ‚|j                  g ¬«       |j
                  �J ‚y )Nr    é   rè   r‘   )rÁ   g      
@)r»  r]   Ú	symthreshry   r  é   r\   r   )rÂ  r   rx   )r   g     €@r  )r+   r¼  r]   rÂ  ry   r  rk   r½  s     r3   rl   z TestAsinhLocator.test_set_paramsŒ  s~  € Ü×#Ñ#°Ø-/¸5Ø)*°ô>ˆð �}‰} Ò"Ð"Ð"Ø�~‰~ Ò&Ð&Ð&Ø�y‰y˜AŠ~Ðˆ~Ø�y‰y˜KÒ'Ð'Ð'à�‰ ˆÔ$Ø�}‰} Ò"Ð"Ð"Ø�‰˜ÔØ�}‰} Ò"Ð"Ð"à�‰ #ˆÔ&Ø�~‰~ Ò$Ð$Ð$Ø�‰ $ˆÔ'Ø�~‰~ Ò$Ð$Ð$à�‰˜QˆÔØ�y‰y˜AŠ~Ðˆ~Ø�‰˜TˆÔ"Ø�y‰y˜AŠ~Ðˆ~à�‰˜ZˆÔ(Ø�y‰y˜JÒ&Ð&Ð&Ø�‰˜TˆÔ"Ø�y‰y˜JÒ&Ð&Ð&Ø�‰˜RˆÔ Ø�y‰yÐ Ð Ñ r5   c                 óZ  — t        j                  ddd¬«      }t        |j                  dd«      t	        j
                  ddd«      «       t        |j                  d	d
«      t	        j
                  d	dd«      «       t        |j                  dd«      t	        j
                  ddd«      «       y )Nr	   r;   r   ©r»  r]   ry   r   r   ç)\�Âõ(ð?r`   r   r£   gB`åÐ"Û¹?ç{®Gáz”?g{®Gáz„¿rå   gM„O¯„?çü©ñÒMb`?©r+   r¼  r   r-   rM   rO   r½  s     r3   Útest_linear_valuesz#TestAsinhLocator.test_linear_values«  s‹   € Ü×#Ñ#°¸rÈÔJˆä˜D×,Ñ,¨R°Ó3ÜŸI™I b¨$°Ó4ô	6ä˜D×,Ñ,¨T°3Ó7ÜŸI™I d¨E°4Ó8ô	:ä˜D×,Ñ,¨U°DÓ9ÜŸI™I e¨V°UÓ;õ	=r5   c                 ó¬   — t        j                  ddd¬«      }t        |j                  dd«      g d¢«       t        |j                  dd	«      g d
¢«       y )Nr£   r;   r   rÅ  r´  r	   )r´  éìÿÿÿr   r   r»   r   r`   r   r    r   r	   éüÿÿr  )rÍ  r´  rÌ  r‚  rº   r   r¼   r[   r   r	   r  ©r+   r¼  r   r-   r½  s     r3   Útest_wide_valuesz!TestAsinhLocator.test_wide_valuesµ  sP   € Ü×#Ñ#°¸rÈÔJˆä˜D×,Ñ,¨T°3Ó7ò4ô	5ô 	˜D×,Ñ,¨U°DÓ9ò7õ	8r5   c                 óp   — t        j                  ddd¬«      }t        |j                  dd«      g d¢«       y)	z<Check that manually injected zero will supersede nearby tickr	   r[   r   rÅ  r¹   r§   )r¿   r   r§   NrÎ  r½  s     r3   Útest_near_zerozTestAsinhLocator.test_near_zero¿  s.   € ä×#Ñ#°¸qÀqÔIˆä˜D×,Ñ,¨T°3Ó7Ò9IÕJr5   c                 ó”   — t        j                  dd¬«      }t        |j                  dd«      t	        j
                  ddd«      «       y )Nr   r;   r\   ée   éf   gq=
×£€Y@r£   rÉ  r½  s     r3   Útest_fallbackzTestAsinhLocator.test_fallbackÅ  s;   € Ü×#Ñ# C°"Ô5ˆä˜D×,Ñ,¨S°#Ó6ÜŸI™I c¨6°3Ó7õ	9r5   c                 óÎ  — t        j                  dddd¬«      }|j                  «        |j                  j	                  dd«       t         |«       g d¢«       |j                  j	                  dd	«       t         |«       g d
¢«       |j                  j	                  dd«       t         |«       g d
¢«       |j                  j	                  dd«       t         |«       g d¢«       y )Nr   r[   r   r   )r»  r]   rÂ  ry   r   r   )r   r   r   r§   r©  g333333ë¿r¨   r   )r   r¨   r   )r+   r¼  r®  r¯  r°  r   r½  s     r3   Útest_symmetrizingz"TestAsinhLocator.test_symmetrizingË  s§   € Ü×#Ñ#°¸QØ.2¸ô<ˆà×ÑÔ à�	‰	×#Ñ# B¨Ô*Ü™D›F¢JÔ/à�	‰	×#Ñ# B¨Ô,Ü™D›F¢JÔ/à�	‰	×#Ñ# E¨4Ô0Ü™D›F¢JÔ/à�	‰	×#Ñ# A sÔ+Ü™D›F¢NÕ3r5   c                 óÞ   — t        j                  dddd¬«      }t        |j                  dd«      g d¢«       t        j                  dd	d
¬«      }t        |j                  dd«      g d¢«       y )Nr   rh   r!   )r   r[   r    )r»  r]   ry   r  é’ÿÿÿén   )iþÿÿiÔþÿÿr´  iÎÿÿÿiâÿÿÿr­  r   r‚  r   rÀ   r_   r   r   r£   r¤   r   r   r[   r    r!   r#   é2   r	   i,  éô  r   r    rÅ  iæûÿÿi  )i�ýÿÿiƒÿÿÿiçÿÿÿr   r   r»   r   r`   r   r    é   é}   iq  rÎ  )r.   Úlctr10Úlctr5s      r3   Útest_base_roundingz#TestAsinhLocator.test_base_roundingÜ  sk   € Ü×%Ñ%°1¸qØ+-°Iô?ˆä˜F×.Ñ.¨t°SÓ9òAô	Bô
 ×$Ñ$°!¸bÀqÔIˆÜ˜E×-Ñ-¨e°TÓ:ò6õ	7r5   N)rJ   rK   rL   r¿  rl   rÊ  rÏ  rÑ  rÕ  r×  rá  r?   r5   r3   r¸  r¸  …  s+   „ òò!ò>=ò8òKò9ò4ó"7r5   r¸  c                   ó˜  — e Zd Zg d¢ZddgZddgZg d¢Zddgddgd	d
gddgddggZg d¢Ze	j                  j                  dddg«      d„ «       Ze	j                  j                  de«      d„ «       Ze	j                  j                  de«      d„ «       Ze	j                  j                  de«      d„ «       Zd„ Zd„ Ze	j                  j                  de«      d„ «       Ze	j                  j                  de«      d„ «       Ze	j                  j                  d e«      d!„ «       Ze	j                  j                  d e«      d"„ «       Zd#„ Zd$„ Zd%„ Zy&)'ÚTestScalarFormatter))é{   é½   r   )iCÿÿÿi…ÿÿÿr   )i50  i=0  i40  )iÃÏÿÿiËÏÿÿiÌÏÿÿ)g    øiø@g    ¨jø@é † )g    ¨jøÀg    øiøÀé`yþÿ)g    hiø@g    jø@ræ  )g    jøÀg    hiøÀrç  )iOÔ iQÔ iPÔ )i¯+íÿi±+íÿi°+íÿ)r   r   r   )rä  rä  r   )gì/»'Ý?g”ö_˜LÝ?r¥   )g
×£p=š­@g33333Ž­@iÄ  )gš™™™‰æ@g    ø`æ@iÈ¯  )g1Ðµ/ G?gšÃÿgÞ»G?gÖÿ9Ì—G?)g\�Âõh˜È@g¤p=
·—È@i.1  )g      "@g      (@r   )g      Œ@ç     À’@r   )g     °�@rè  r   )ç®Gáz®ï?rÆ  r   )g{®Gáú#@g…ëQ¸$@r!   )g�Âõ(\ÿX@gq=
×£ Y@r	   )gö(\�Âõ@g
×£p=
@r   )g{®Gáú/@gÃõ(\�0@rn  )g!°rh‘íÜ¿ç°rh‘í|ß?r   )g°rh‘í|ß¿rê  r   )g3333³È@g    @È@i0  )gffff¦ÈÀgffff¦È@r   TF)	)Fr´   )r
  r
   r   F)T©éþÿÿÿr   )r­  r   r   F)Trë  )rÌ  r!   r   F)Trë  )rÙ  éx   r   F)Trë  )iˆÿÿÿrÚ  r   F)Trë  )rµ  rÈ  r‚  F)T)r|   r   )g   €tÒÚAg   0ëþAre  T)Tr´   ©g     jøÀr  r    F)T)r   r   rî  r   Fr   z0.000g�(í¾0‰?z0.012g°rh‘í|¿?z0.123g®Gáz®ó?z1.230gš™™™™™(@z12.300))r£   ú1e-1)rç   z1.1e-1)r6  Ú1e8)g    Þ9šAz1.1e8zunicode_minus, result)Tõ   âˆ’1)Fú-1c                 óÆ   — |t         j                  d<   t        j                  «       j                  j                  «       j                  d«      j                  «       |k(  sJ ‚y )Núaxes.unicode_minusr   )rˆ   r=  r«   Úgcar¯   Úget_major_formatterÚformat_data_shortÚstrip)r.   Úunicode_minusrH   s      r3   Útest_unicode_minusz&TestScalarFormatter.test_unicode_minus,  sO   € ð .;Œ�‰Ð)Ñ*ä�G‰G‹I�O‰O×/Ñ/Ó1×CÑCÀBÓG×MÑMÓOØòð	ñr5   zleft, right, offsetc                 óV  — t        j                  «       \  }}|j                  j                  «       }||k(  rt	        j
                  t        d¬«      n	t        «       5  |j                  ||«       d d d «       |j                  j                  «        |j                  |k(  sJ ‚||k(  rt	        j
                  t        d¬«      n	t        «       5  |j                  ||«       d d d «       |j                  j                  «        |j                  |k(  sJ ‚y # 1 sw Y   Œ¥xY w# 1 sw Y   ŒAxY w)NzAttempting to set identicalr=   )r«   r¬   r¯   rö  r@   r!  rT  r   r­   Ú_update_ticksr‚   )r.   ÚleftÚrightr‚   r²   r³   Ú	formatters          r3   Útest_offset_valuez%TestScalarFormatter.test_offset_value4  só   € ä—,‘,“.‰ˆˆRØ—H‘H×0Ñ0Ó2ˆ	ð ˜’ô �l‰lœ;Ð.KÕLÜ$/£Mñ	%à�K‰K˜˜eÔ$÷	%ð 	�‰×ÑÔ Ø×Ñ 6Ò)Ð)Ð)ð ˜’ô �l‰lœ;Ð.KÕLÜ$/£Mñ	%à�K‰K˜˜tÔ$÷	%ð 	�‰×ÑÔ Ø×Ñ 6Ò)Ð)Ñ)÷	%ð 	%ú÷	%ð 	%ús   ÁDÃDÄDÄD(Ú
use_offsetc                 óÒ   — t        j                  d|i«      5  t        j                  «       }||j	                  «       k(  sJ ‚|j
                  dk(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nzaxes.formatter.useoffsetr   )rˆ   r‰   r+   ÚScalarFormatterÚget_useOffsetr‚   )r.   r  Útmp_forms      r3   Útest_use_offsetz#TestScalarFormatter.test_use_offsetE  s`   € ä�^‰^Ð7¸ÐDÓEñ 	(Ü×.Ñ.Ó0ˆHØ ×!7Ñ!7Ó!9Ò9Ð9Ð9Ø—?‘? aÒ'Ð'Ñ'÷	(÷ 	(ñ 	(ús   ˜;AÁA&Úuse_math_textc                 ó°   — t        j                  d|i«      5  t        j                  «       }||j	                  «       k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Núaxes.formatter.use_mathtext)rˆ   r‰   r+   r  Úget_useMathText)r.   r  r  s      r3   Útest_useMathTextz$TestScalarFormatter.test_useMathTextL  sN   € ä�^‰^Ð:¸MÐJÓKñ 	?Ü×.Ñ.Ó0ˆHØ  H×$<Ñ$<Ó$>Ò>Ð>Ñ>÷	?÷ 	?ñ 	?ús   ˜*AÁAc                 ó”   — t        j                  «       }|j                  d«       |j                  «       rJ ‚|j                  dk(  sJ ‚y )Nr   )r+   r  Úset_useOffsetr  r‚   ©r.   r  s     r3   Útest_set_use_offset_floatz-TestScalarFormatter.test_set_use_offset_floatR  sB   € Ü×*Ñ*Ó,ˆØ×Ñ˜sÔ#Ø×)Ñ)Ô+Ð+Ð+Ø�‰ #Ò%Ð%Ñ%r5   c                 óÖ  — t        j                  «       }|d   }|r|d   dd  g t         j                  gfv rt        j                  d«       t        j                  ddi«      5  t        j                  «       }|j                  «       sJ ‚|j                  «        |j                  j                  dd«       |j                  g d	¢«       | |d
«      v sJ ‚	 d d d «       y # 1 sw Y   y xY w)NÚthousands_sepÚgroupingr   zLocale does not apply groupingzaxes.formatter.use_localeTr   r!   )r   r   r[   r  )ÚlocaleÚ
localeconvÚCHAR_MAXr@   Úskiprˆ   r‰   r+   r  Úget_useLocaler®  r¯  Úset_data_intervalÚset_locs)r.   ÚconvÚsepr  s       r3   Útest_use_localez#TestScalarFormatter.test_use_localeX  sÐ   € Ü× Ñ Ó"ˆØ�?Ñ#ˆÙ�d˜:Ñ& r sÐ+°´V·_±_Ð4EÐ/FÑFÜ�K‰KÐ8Ô9ä�^‰^Ð8¸$Ð?Ó@ñ 	(Ü×.Ñ.Ó0ˆHØ×)Ñ)Ô+Ð+Ð+à×&Ñ&Ô(Ø�M‰M×+Ñ+¨A¨rÔ2Ø×ÑšiÔ(Ø™( 3›-Ñ'Ð'Ñ'÷	(÷ 	(ñ 	(ús   Á#A2CÃC(z.sci_type, scilimits, lim, orderOfMag, fewticksc                 óÆ  — t        j                  «       }|j                  |«       |j                  |«       t	        j
                  «       \  }}|j                  j                  |«        |j                  |Ž  |r.|j                  j                  t        j                  d«      «       |j                  |j                  j                  «       «       ||j                  k(  sJ ‚y )Nr‘   )r+   r  Úset_scientificÚset_powerlimitsr«   r¬   rñ   Úset_major_formatterrð   rý   r,   r  Úget_majorticklocsÚorderOfMagnitude)	r.   Úsci_typeÚ	scilimitsrò   Ú
orderOfMagÚfewticksr  r²   r³   s	            r3   Útest_scilimitsz"TestScalarFormatter.test_scilimitsg  s¬   € ô ×*Ñ*Ó,ˆØ×Ñ Ô)Ø× Ñ  Ô+Ü—,‘,“.‰ˆˆRØ
�‰×$Ñ$ XÔ.Øˆ�‰�SÑÙØ�H‰H×&Ñ&¤w×':Ñ':¸1Ó'=Ô>à×Ñ˜"Ÿ(™(×4Ñ4Ó6Ô7Ø˜X×6Ñ6Ò6Ð6Ñ6r5   zvalue, expectedc                 ó~   — dt         j                  d<   t        j                  «       }|j	                  |«      |k(  sJ ‚y )NFrô  )rˆ   r=  r+   r  Úformat_data)r.   Úvaluer1   Úsfs       r3   Útest_format_dataz$TestScalarFormatter.test_format_datav  s6   € à-2Œ�‰Ð)Ñ*Ü×$Ñ$Ó&ˆØ�~‰~˜eÓ$¨Ò0Ð0Ñ0r5   zdata, expectedc                 ó¸   — t        j                  «       \  }}|j                  dd«       |j                  j	                  «       j
                  } ||«      |k(  sJ ‚y )Nr   r   )r«   r¬   r­   r¯   rö  r÷  )r.   r†   r1   r²   r³   Úfmts         r3   Útest_cursor_precisionz)TestScalarFormatter.test_cursor_precision|  sI   € ä—,‘,“.‰ˆˆRØ
�‰�B˜ÔØ�h‰h×*Ñ*Ó,×>Ñ>ˆÙ�4‹y˜HÒ$Ð$Ñ$r5   c                 ó2  — t        j                  «       }|j                  «        |j                  j	                  dd«       |j
                  } ||«      |k(  sJ ‚|j                  j                  «       dk(  sJ ‚|j                  j                  «       dk(  sJ ‚y )Nr   r!   re  )r+   r  r®  r¯  r°  r÷  Úget_tick_spaceÚ
get_minpos)r.   r†   r1   r+  r.  s        r3   Útest_cursor_dummy_axisz*TestScalarFormatter.test_cursor_dummy_axisƒ  s…   € ô ×$Ñ$Ó&ˆØ
×ÑÔØ
�‰×!Ñ! ! RÔ(Ø×"Ñ"ˆÙ�4‹y˜HÒ$Ð$Ð$Ø�w‰w×%Ñ%Ó'¨1Ò,Ð,Ð,Ø�w‰w×!Ñ!Ó# qÒ(Ð(Ñ(r5   c                 ó2  — t         j                  j                  ddddœ«       t        j                  t
        d¬«      5  t        j                  «       \  }}|j                  g d¢«       |j                  j                  «        d d d «       y # 1 sw Y   y xY w)NÚserifÚcmr10F)úfont.familyz
font.serifr	  zcmr10 font should ideallyr=   r©  )rˆ   r=  Úupdater@   r!  rT  r«   r¬   rÈ   ÚcanvasÚdrawr  s      r3   Útest_mathtext_ticksz'TestScalarFormatter.test_mathtext_ticksŽ  sq   € Ü�‰×ÑØ"Ø!Ø+0ñ
ô 	ô �\‰\œ+Ð-HÔIñ 	Ü—l‘l“n‰GˆC�Ø�M‰Mš*Ô%Ø�J‰J�O‰OÔ÷	÷ 	ñ 	ús   ¿ABÂBc                 óì  — t         j                  j                  ddddœ«       |j                  t        j
                  d¬«      5  t        j                  «       \  }}|j                  ddgd	dg«       |j                  d
«       g d¢}t        j                  «       }|j                  |t        ||«      «       |j                  j                  «        |j                   rJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr6  ÚcmT)r7  zmathtext.fontsetr	  zmatplotlib.mathtext)Úloggerg¸…ëQ¸ž¿r¢   é(   r  )rÇ  r¤   r‘   rÛ  )rˆ   r=  r8  Úat_levelÚloggingÚWARNINGr«   r¬   Úplotr  r+   ÚLogFormatterSciNotationÚ
set_yticksÚmapr9  r:  Útext)r.   Úcaplogr²   r³   Úyticksrÿ  s         r3   Útest_cmr10_substitutionsz,TestScalarFormatter.test_cmr10_substitutionsš  sÃ   € Ü�‰×ÑØ"Ø $Ø+/ñ
ô 	ð �_‰_œWŸ_™_Ð5Jˆ_ÓKñ 	#Ü—l‘l“n‰GˆC�Ø�G‰G�U˜D�M B¨ :Ô.Ø�M‰M˜%Ô Ú'ˆFÜ×7Ñ7Ó9ˆIØ�M‰M˜&¤# i°Ó"8Ô9Ø�J‰J�O‰OÔØ—{’{Ð"�?�{÷	#÷ 	#ñ 	#ús   ÁBC*Ã*C3c                 óh   — t        j                  «       }|j                  g «        |d«      dk(  sJ ‚y )Nr   Ú )r+   r  r  )r.   r+  s     r3   Útest_empty_locsz#TestScalarFormatter.test_empty_locs¬  s+   € Ü×$Ñ$Ó&ˆØ
�‰�BŒÙ�#‹w˜"Š}Ð‰}r5   N)rJ   rK   rL   Úoffset_dataÚuse_offset_dataÚuseMathText_dataÚscilimits_dataÚcursor_datar)  r@   rR   rS   rú  r   r  r  r  r  r'  r,  r/  r3  r;  rJ  rM  r?   r5   r3   rã  rã  ê  sµ  „ ò€KðB ˜U�m€Oà˜e�}Ðò
€Nð 
ˆWˆØ	�ÐØ	�ÐØ	�ÐØ	ˆxÐð€Kò€Kð ‡[�[×ÑÐ4Ø7¸ÐGóIñóIðð ‡[�[×ÑÐ2°KÓ@ñ*ó Að*ð  ‡[�[×Ñ˜\¨?Ó;ñ(ó <ð(ð ‡[�[×Ñ˜_Ð.>Ó?ñ?ó @ð?ò
&ò(ð ‡[�[×ÑØ8¸.óJñ7óJð7ð ‡[�[×ÑÐ.°Ó<ñ1ó =ð1ð
 ‡[�[×ÑÐ-¨{Ó;ñ%ó <ð%ð ‡[�[×ÑÐ-¨{Ó;ñ)ó <ð)ò
ò#ó$r5   rã  c                   óÂ  — e Zd Zdd ej                  dd«       ej                  dd«      g d¢fdd ej
                  dd	ej                  d
ddg«       ed«      g d¢fdd ej
                  g d¢e¬«       ed«      g d¢fgZ	dddej                  ej                  gZej                  j                  de	«      ej                  j                  de«      d„ «       «       Zd„ Zy)ÚTestLogFormatterExponentTr‘   r‚  r  )z-3z-2rò  Ú0Ú1Ú2Ú3Fr!   r£   r	  r`   r»   gñhãˆµøä¾r   )ú0.1z1e-05ú3.14z0.2z-0.2z-1e-05rÛ  )r[   r    r³  é*   ©Údtype)rX  Ú5Ú12Ú42rq   rÃ   r
  z2labelOnlyBase, exponent, locs, positions, expectedry   c                 óF  — t        j                  ||¬«      }|j                  «        |j                  j	                  d||z  «       ||z  }t        ||«      D �	�
cg c]  \  }	}
 ||	|
«      ‘Œ }}	}
|D �cg c]  }|j                  dd«      ‘Œ }}||k(  sJ ‚y c c}
}	w c c}w )N©ry   ÚlabelOnlyBaser   ú-u   âˆ’)r+   ÚLogFormatterExponentr®  r¯  r°  r  Úreplace)r.   rc  ry   ÚexponentÚlocsÚ	positionsr1   rÿ  ÚvalsrÕ   ÚposÚlabelsÚlabels                r3   r4   z#TestLogFormatterExponent.test_basicÀ  s¢   € ô
 ×0Ñ0°dØ?LôNˆ	à×#Ñ#Ô%Ø�‰×(Ñ(¨¨D°(©NÔ;Ø�T‰zˆÜ47¸¸iÓ4H×I©¨¨C‘)˜A˜sÕ#ÐIˆÑIØFNÖO¸U�E—M‘M #Ð'7Õ8ÐOˆÐOØ˜Ò!Ð!Ñ!ùó JùÚOs   ÁBÁ5Bc                 ó¤   — t        j                  dd¬«      }|j                  «        |j                  j	                  dd«        |d«      dk(  sJ ‚y )Nr!   Trb  r   g&üøŽ$ô?rL  )r+   re  r®  r¯  r°  )r.   rÿ  s     r3   Ú
test_blankz#TestLogFormatterExponent.test_blankÎ  sG   € ä×0Ñ0°bÈÔMˆ	Ø×#Ñ#Ô%Ø�‰×(Ñ(¨¨BÔ/Ù˜Ó! RÒ'Ð'Ñ'r5   N)rJ   rK   rL   rM   rO   rN   Úpirx  ÚfloatÚ
param_dataÚeÚ	base_datar@   rR   rS   r4   ro  r?   r5   r3   rT  rT  ²  së   „ à	ˆq�)�"—)‘)˜B Ó$ i b§i¡i°°CÓ&8Ú	/ð	1ð 
��H�B—H‘H˜c 7¨B¯E©E°3¸¸hÐGÓHÙ	ˆq‹ÒDð	Fà	��H�B—H‘Hš^°5Ô9¹5À»8Ú	ð	!ð	€Jð �c˜4 §¡¨¯©Ð-€Ià‡[�[×ÑØ@À*óNà‡[�[×Ñ˜V YÓ/ñ	"ó 0óNð	"ó(r5   rT  c                   óz   — e Zd Z ej                  «       Zg d¢Zej                  j                  de«      d„ «       Z
y)ÚTestLogFormatterMathtext))r   r   ú$\mathdefault{10^{0}}$)r   rå   z$\mathdefault{10^{-2}}$)r   r   z$\mathdefault{10^{2}}$)r[   r   z$\mathdefault{1}$)r[   rå   z$\mathdefault{0.01}$)r[   r   z$\mathdefault{100}$)r[   r   z$\mathdefault{10^{-3}}$)r[   r  z$\mathdefault{10^{3}}$zmin_exponent, value, expectedc                 óŠ   — t        j                  d|i«      5  | j                  |«      |k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nzaxes.formatter.min_exponent)rˆ   r‰   r.  )r.   Úmin_exponentr*  r1   s       r3   Útest_min_exponentz*TestLogFormatterMathtext.test_min_exponentã  s?   € ä�^‰^Ð:¸LÐIÓJñ 	/Ø—8‘8˜E“? hÒ.Ð.Ñ.÷	/÷ 	/ñ 	/ús	   ˜9¹AN)rJ   rK   rL   r+   ÚLogFormatterMathtextr.  Ú	test_datar@   rR   rS   rz  r?   r5   r3   rv  rv  Ö  s@   „ Ø
&ˆ'×
&Ñ
&Ó
(€Cò	€Ið ‡[�[×ÑÐ<¸iÓHñ/ó Iñ/r5   rv  c                   ó”   — e Zd Zg d¢Zej
                  j                  d«      ej                  j                  de«      d„ «       «       Z
y)ÚTestLogFormatterSciNotation))r   g       ?z$\mathdefault{2^{-5}}$)r   r   z$\mathdefault{2^{0}}$)r   é    z$\mathdefault{2^{5}}$)r   g333333£?z$\mathdefault{1.2\times2^{-5}}$)r   r€   z$\mathdefault{1.2\times2^{0}}$)r   g333333C@z$\mathdefault{1.2\times2^{5}}$)r!   r   z$\mathdefault{-10^{0}}$)r!   r	  z$\mathdefault{10^{-5}}$)r!   r   rw  )r!   ræ  z$\mathdefault{10^{5}}$)r!   gñhãˆµøô>z$\mathdefault{2\times10^{-5}}$)r!   r   z$\mathdefault{2\times10^{0}}$)r!   i@ z$\mathdefault{2\times10^{5}}$)r!   rc  z$\mathdefault{5\times10^{-5}}$)r!   r    z$\mathdefault{5\times10^{0}}$)r!   i ¡ z$\mathdefault{5\times10^{5}}$Údefaultzbase, value, expectedc                 ó¤   — t        j                  |¬«      }t        j                  ddi«      5   ||«      |k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nrx   útext.usetexF)r+   rD  rˆ   r‰   )r.   ry   r*  r1   rÿ  s        r3   r4   z&TestLogFormatterSciNotation.test_basicý  sM   € ô ×3Ñ3¸Ô>ˆ	Ü�^‰^˜]¨EÐ2Ó3ñ 	0Ù˜UÓ# xÒ/Ð/Ñ/÷	0÷ 	0ñ 	0ús   ®AÁAN)rJ   rK   rL   r|  rˆ   Ústylerú   r@   rR   rS   r4   r?   r5   r3   r~  r~  é  sG   „ ò€Ið& 	‡Y�Y×Ñ�yÓ!Ø‡[�[×ÑÐ4°iÓ@ñ0ó Aó "ñ0r5   r~  c                   óz  — e Zd Zg d¢Zej
                  j                  de«      d„ «       Zej
                  j                  dg d¢«      d„ «       Zdd„Z	e
j                  j                  d«      d	„ «       Zej
                  j                  d
g d¢«      d„ «       Zej
                  j                  d
g d¢«      d„ «       Zy)ÚTestLogFormatter)„)ç}…9“x ?r   z3.142e-5)çÜæGÅ·–4?r   z3.142e-4)ç“à™¶e¼i?r   z3.142e-3)ç\, ’¿ ?r   z3.142e-2)çs7¨v/Ô?r   z3.142e-1)çPERTû!	@r   ú3.142)ç¤Öf)zj?@r   z3.142e1)ç&FàYŒ¢s@r   z3.142e2)ç°WXp/‹¨@r   z3.142e3)çœmnLû­Þ@r   z3.142e4)ç�Å½,Ar   z3.142e5)r	  r   ú1e-5)r   r   ú1e-4)r   r   ú1e-3)rå   r   ú1e-2)r£   r   rï  )r   r   rV  )r!   r   Ú10)r	   r   Ú100)r  r   Ú1000)é'  r   Ú1e4)ræ  r   Ú1e5)r†  ræ   rU  )r‡  ræ   rU  )rˆ  ræ   ú0.003)r‰  ræ   ú0.031)rŠ  ræ   ú0.314)r‹  ræ   rŒ  )r�  ræ   ú31.416)rŽ  ræ   ú314.159)r�  ræ   ú3141.593)r�  ræ   ú	31415.927)r‘  ræ   ú
314159.265)r	  ræ   rU  )r   ræ   rU  )r   ræ   ú0.001)rå   ræ   ú0.01)r£   ræ   rY  )r   ræ   rV  )r!   ræ   r–  )r	   ræ   r—  )r  ræ   r˜  )r™  ræ   Ú10000)ræ  ræ   Ú100000)r†  r   rU  )r‡  r   rU  )rˆ  r   rœ  )r‰  r   r�  )rŠ  r   rž  )r‹  r   rŒ  )r�  r   rŸ  )rŽ  r   r   )r�  r   r¡  )r�  r   r¢  )r‘  r   r£  )r	  r   rU  )r   r   rU  )r   r   r¤  )rå   r   r¥  )r£   r   rY  )r   r   rV  )r!   r   r–  )r	   r   r—  )r  r   r˜  )r™  r   r¦  )ræ  r   r§  )r†  r    rU  )r‡  r    rU  )rˆ  r    rU  )r‰  r    z0.03)rŠ  r    z0.31)r‹  r    rZ  )r�  r    z31.42)rŽ  r    z314.16)r�  r    z3141.59)r�  r    z31415.93)r‘  r    z	314159.27)r	  r    rU  )r   r    rU  )r   r    rU  )rå   r    r¥  )r£   r    rY  )r   r    rV  )r!   r    r–  )r	   r    r—  )r  r    r˜  )r™  r    r¦  )ræ  r    r§  )r†  r	   rU  )r‡  r	   rU  )rˆ  r	   rU  )r‰  r	   rU  )rŠ  r	   z0.3)r‹  r	   ú3.1)r�  r	   z31.4)rŽ  r	   z314.2)r�  r	   z3141.6)r�  r	   z31415.9)r‘  r	   z314159.3)r	  r	   rU  )r   r	   rU  )r   r	   rU  )rå   r	   rU  )r£   r	   rY  )r   r	   rV  )r!   r	   r–  )r	   r	   r—  )r  r	   r˜  )r™  r	   r¦  )ræ  r	   r§  )r†  r1  z3.1e-5)r‡  r1  z3.1e-4)rˆ  r1  z3.1e-3)r‰  r1  z3.1e-2)rŠ  r1  z3.1e-1)r‹  r1  r¨  )r�  r1  z3.1e1)rŽ  r1  z3.1e2)r�  r1  z3.1e3)r�  r1  z3.1e4)r‘  r1  z3.1e5)r	  r1  r’  )r   r1  r“  )r   r1  r”  )rå   r1  r•  )r£   r1  rï  )r   r1  rV  )r!   r1  r–  )r	   r1  r—  )r  r1  r˜  )r™  r1  rš  )ræ  r1  r›  zvalue, domain, expectedc                 ó^   — t        j                  «       }|j                  ||«      }||k(  sJ ‚y ©N)r+   ÚLogFormatterÚ_pprint_val)r.   r*  Údomainr1   r.  rm  s         r3   Útest_pprintzTestLogFormatter.test_pprint�  s.   € ä×"Ñ"Ó$ˆØ—‘  vÓ.ˆØ˜Ò Ð Ñ r5   zvalue, long, short))r   rU  ú0           )r   rU  r¯  )r¿   z-10^0z-1          )g»½×Ùß|ë=z2x10^-10z2e-10       )g    _ Bz10^10z1e+10       c                 óà   — t        j                  «       \  }}|j                  d«       |j                  j	                  «       }|j                  |«      |k(  sJ ‚|j                  |«      |k(  sJ ‚y )Nr  )r«   r¬   Ú
set_xscaler¯   rö  r)  r÷  )r.   r*  ÚlongÚshortr²   r³   r.  s          r3   r,  z!TestLogFormatter.test_format_data“  sa   € ô —,‘,“.‰ˆˆRØ
�‰�eÔØ�h‰h×*Ñ*Ó,ˆØ�‰˜uÓ%¨Ò-Ð-Ð-Ø×$Ñ$ UÓ+¨uÒ4Ð4Ñ4r5   c                 óH  — |j                  «       }|j                  «       }|j                  |«       |dt        j                  t        j
                  |«      «      z  z  }|D �cg c]  }t        |«      |v ‘Œ }}|D �cg c]  } ||«      dk7  ‘Œ }	}|	|k(  sJ ‚yc c}w c c}w )z.Test whether locator marks subs to be labeled.r!   rL  N)Úget_minor_formatterrÊ   r  rM   rv  rw  Úround)
r.   r¯  r  r.  Úminor_tlocsÚcoefsÚcÚlabel_expectedrÕ   Ú
label_tests
             r3   Ú_sub_labelszTestLogFormatter._sub_labels¡  s˜   € à×&Ñ&Ó(ˆØ×,Ñ,Ó.ˆØ�‰�[Ô!Ø˜b¤2§8¡8¬B¯H©H°[Ó,AÓ#BÑCÑCˆØ49Ö:¨qœ% ›( dÒ*Ð:ˆÐ:Ø,7Ö8 q‘c˜!“f “lÐ8ˆ
Ð8Ø˜^Ò+Ð+Ñ+ùò ;ùÚ8s   Á$BÁ>Br€  c           	      ó$  — t        j                  «       \  }}|j                  d«       |j                  j	                  t        j                  dg ¬«      «       |j                  j                  t        j                  dt        j                  dd«      ¬«      «       |j                  j                  t        j                  d¬«      «       |j                  j                  t        j                  d¬«      «       |j                  dd	«       |j                  j                  «       }|j                  |j                  j!                  «       «       |j                  j!                  «       D �cg c]  } ||«      d
k7  ‘Œ }}t        j"                  |«      sJ ‚| j%                  |j                  g ¬«       |j                  dd«       | j%                  |j                  g ¬«       |j                  dd«       | j%                  |j                  g ¬«       |j                  dd«       | j%                  |j                  g d¢¬«       |j                  dd«       | j%                  |j                  t        j                  ddt&        ¬«      ¬«       y c c}w )Nr  r!   )ry   r  r   T)rc  Fr   r,  rL  r  i   éP   rh   )r   r[   r‘   r   r   r§   r\  )r«   r¬   r±  r¯   rý   r+   r  rÄ   rM   rO   r   r«  Úset_minor_formatterr­   rö  r  r!  rG   r¼  ru  )r.   r²   r³   r.  rÕ   Úshow_major_labelss         r3   Útest_sublabelzTestLogFormatter.test_sublabel«  sñ  € ô —,‘,“.‰ˆˆRØ
�‰�eÔØ
�‰×"Ñ"¤7×#5Ñ#5¸2ÀBÔ#GÔHØ
�‰×"Ñ"¤7×#5Ñ#5¸2Ü;=¿9¹9ÀQÈÓ;Kô$Mô 	Nà
�‰×$Ñ$¤W×%9Ñ%9ÈÔ%MÔNØ
�‰×$Ñ$¤W×%9Ñ%9ÈÔ%NÔOà
�‰�A�sÔØ�h‰h×*Ñ*Ó,ˆØ�‰�R—X‘X×/Ñ/Ó1Ô2à&(§h¡h×&@Ñ&@Ó&BöDØ!"ñ ! ›V r›\ð DÐð Dä�v‰vÐ'Ô(Ð(Ð(Ø×Ñ˜Ÿ™¨ÐÔ+ð 	�‰�A�sÔØ×Ñ˜Ÿ™¨ÐÔ+ð 	�‰�A�rÔØ×Ñ˜Ÿ™¨ÐÔ+ð 	�‰�A�qÔØ×Ñ˜Ÿ™ªÐÔ5ð 	�‰�C˜ÔØ×Ñ˜Ÿ™¬¯	©	°!°R¼sÔ(CÐÕDùò-Ds   Å,JÚval)r   r!   r	   r  c                 ó°   — t        j                  «       }|j                  «        |j                  j	                  dd«        ||«      t        |«      k(  sJ ‚y ©Nr   r!   )r+   r«  r®  r¯  r°  Ústr©r.   rÂ  Útemp_lfs      r3   Útest_LogFormatter_callz'TestLogFormatter.test_LogFormatter_callÑ  sH   € ô ×&Ñ&Ó(ˆØ×!Ñ!Ô#Ø�‰×&Ñ& q¨"Ô-Ù�s‹|œs 3›xÒ'Ð'Ñ'r5   )g       g       g       g       c                 ó”   — t        j                  «       }|j                  «        |j                  j	                  dd«        ||«       y rÄ  )r+   r«  r®  r¯  r°  rÆ  s      r3   Útest_LogFormatter_call_tinyz,TestLogFormatter.test_LogFormatter_call_tinyÙ  s9   € ô ×&Ñ&Ó(ˆØ×!Ñ!Ô#Ø�‰×&Ñ& q¨"Ô-Ù��r5   N)r?   )rJ   rK   rL   Úpprint_datar@   rR   rS   r®  r,  r¼  rˆ   rƒ  rú   rÁ  rÈ  rÊ  r?   r5   r3   r…  r…    sÕ   „ òE€KðN ‡[�[×ÑÐ6¸ÓDñ!ó Eð!ð
 ‡[�[×ÑÐ1ò 4ó ñ5óð5ó,ð 	‡Y�Y×Ñ�yÓ!ñ#Eó "ð#EðJ ‡[�[×Ñ˜UÒ$6Ó7ñ(ó 8ð(ð ‡[�[×Ñ˜UÒ$FÓGñó Hñr5   r…  c                   óÌ  — e Zd Zed„ «       Zej                  j                  dg d¢«      d„ «       Z e	 e
dd«      D � �cg c]  }d| z  ‘Œ
 c}}  e
dd«      D � �cg c]  }dd| z  z
  ‘Œ c}} z   dgz   «      Zej                  j                  de«      d	„ «       Zej                  j                  dd
«      d„ «       Zej                  j                  ddd ej                   ej                   ddd«       «      z   z  «      d„ «       Zg d¢Zej                  j                  de«      d„ «       Zd„ Zd„ Zd„ Zej                  j                  dd«      d„ «       Zyc c}} w c c}} w )ÚTestLogitFormatterc                 óR  — t        j                  d| «      }|rL|d   du}|d   rt        |d   «      nd}|d   �t        |d   «      nd}|d|z  z  }|d   s|d   �	|rd|z
  S |S t        j                  d	| «      }|r!t        |d
   «      t        |d   «      }}||z  S t	        d«      ‚)z¯
        Parser to convert string as r'$\mathdefault{1.41\cdot10^{-4}}$' in
        float 1.41e-4, as '0.5' or as r'$\mathdefault{\frac{1}{2}}$' in float
        0.5,
        zT[^\d]*(?P<comp>1-)?(?P<mant>\d*\.?\d*)?(?:\\cdot)?(?:10\^\{(?P<expo>-?\d*)})?[^\d]*$ÚcompNÚmantr   Úexpor   r!   z4[^\d]*\\frac\{(?P<num>\d+)\}\{(?P<deno>\d+)\}[^\d]*$ÚnumÚdenozNot formatted by LogitFormatter)rU   r>   rq  ru  rW   )Ústringr>   rÏ  ÚmantissarÑ  r*  rÒ  rÓ  s           r3   Úlogit_deformatterz$TestLogitFormatter.logit_deformatterã  s×   € ô —‘ðð ó
ˆñ Ø˜‘=¨Ð,ˆDØ/4°Vª}”u˜U 6™]Ô+À!ˆHØ).¨v©Ð)B”3�u˜V‘}Ô%ÈˆDØ˜r T™zÑ)ˆEØ�VŠ}  f¡Ð 9ÙØ˜u™9Ð$Ø�Ü—‘ØCÀVó
ˆñ Ü˜e E™lÓ+¬U°5¸±=Ó-A�ˆCØ˜‘:ÐÜÐ:Ó;Ð;r5   zfx, x))zSTUFF0.41OTHERSTUFFg=
×£p=Ú?)zSTUFF1.41\cdot10^{-2}OTHERSTUFFgÿ!ýöuàŒ?)zSTUFF1-0.41OTHERSTUFFgâz®Gáâ?)z!STUFF1-1.41\cdot10^{-2}OTHERSTUFFgx$(~Œï?)ÚSTUFFN)zSTUFF12.4e-3OTHERSTUFFNc                 óê   — |€8t        j                  t        «      5  t        j	                  |«       d d d «       y t        j	                  |«      }t
        j                  ||«      sJ ‚y # 1 sw Y   y xY wrª  )r@   rA   rW   rÍ  rÖ  rW  rY  )r.   ÚfxrÕ   rê   s       r3   Útest_logit_deformaterz(TestLogitFormatter.test_logit_deformater  se   € ð ˆ9Ü—‘œzÓ*ñ 9Ü"×4Ñ4°RÔ8÷9ð 9ô #×4Ñ4°RÓ8ˆAÜ×'Ñ'¨¨1Ô-Ð-Ñ-÷	9ð 9ús   œA)Á)A2r   r!   r   rÕ   c                 óÐ   — t        j                  d¬«      }|j                  | j                  «        ||«      }t        j                  |«      }t        j                  ||«      sJ ‚y)zj
        Test the formatted value correspond to the value for ideal ticks in
        logit space.
        F©Úuse_overlineN)r+   ÚLogitFormatterr  Údecade_testrÍ  rÖ  rW  rY  )r.   rÕ   rÿ  ÚsÚx2s        r3   r4   zTestLogitFormatter.test_basic  sW   € ô ×*Ñ*¸Ô>ˆ	Ø×Ñ˜4×+Ñ+Ô,Ù�a‹LˆÜ×1Ñ1°!Ó4ˆÜ×#Ñ# A rÔ*Ð*Ñ*r5   )r   rÀ   r   r   r   r   c                 ó„   — t        j                  d¬«      }|j                  | j                  «        ||«      }|dk(  sJ ‚y)zl
        Test that invalid value are formatted with empty string without
        raising exception.
        FrÜ  rL  N)r+   rÞ  r  rß  )r.   rÕ   rÿ  rà  s       r3   Útest_invalidzTestLogitFormatter.test_invalid)  s<   € ô ×*Ñ*¸Ô>ˆ	Ø×Ñ˜4×+Ñ+Ô,Ù�a‹LˆØ�BŠwˆ‰wr5   r|   r   c                 ó>  — t        j                  d¬«      }dD ]‚  }|d|z  z   dk  sŒ|j                  |d|z  z
  ||d|z  z   g«        ||«      } ||d|z  z   «      }t        j	                  |«      t        j	                  |«      z
  }d|cxk  r
d|z  k  rŒJ ‚ J ‚ y)zS
        The format length should change depending on the neighbor labels.
        FrÜ  )	r!   r   rÛ  r	   éÈ   r  iÐ  iˆ  r™  r   r   r   N)r+   rÞ  r  rÍ  rÖ  )r.   rÕ   rÿ  ÚNÚsxÚsx1Úds          r3   Útest_variablelengthz&TestLogitFormatter.test_variablelength4  s³   € ô
 ×*Ñ*¸Ô>ˆ	Ø@ò 		%ˆAØ�1�q‘5‰y˜1‹}Ø×"Ñ" A¨¨A©¡I¨q°!°a¸!±e±)Ð#<Ô=Ù˜q“\�Ù  A¨¡E¡	Ó*�ä&×8Ñ8¸Ó=Ü(×:Ñ:¸2Ó>ñ?ð ð ˜1”}˜q 1™u“}Ð$‘}Ð$�}ñ		%r5   ))Trd  )©rÝ  F)éK   F)Trb  )rë  ©rì  T)Tra  )©rÝ  Trí  )F)r   gR¸…ëQè?g¤p=
×£è?))r   Trî  rí  zmethod, lims, casesc                 óª  — |r&t        j                  d¬«      } |j                  |Ž }nt        j                  |«      }t        j
                  d¬«      }|D ]v  \  }}|j                  |«       |j                  |«      }	|	D �
cg c]  }
t        |
«      dkD  sŒ|
‘Œ }}
|rt        |«      dkD  rŒWJ ||f«       ‚t        |«      dk(  rŒoJ ||f«       ‚ yc c}
w )z,
        Test minor/major displays.
        Tr©   r   N)	r+   rh  r-   rM   rN   rÞ  Úset_minor_thresholdÚformat_ticksrÉ   )r.   Úmethodri  ÚcasesÚmin_locrq  Úmin_formÚ	thresholdÚ	has_minorÚ	formattedÚfÚlabelleds               r3   Útest_minor_vs_majorz&TestLogitFormatter.test_minor_vs_majorL  s×   € ñ Ü×*Ñ*°Ô6ˆGØ'�G×'Ñ'¨Ð.‰Eä—H‘H˜T“NˆEÜ×)Ñ)°Ô5ˆØ$)ò 	BÑ ˆI�yØ×(Ñ(¨Ô3Ø ×-Ñ-¨eÓ4ˆIØ#,Ö;˜a´°A³¸³
šÐ;ˆHÐ;ÙÜ˜8“} qÓ(Ð@¨9°iÐ*@Ó@Ð(ä˜8“}¨Ó)ÐA¨I°yÐ+AÓAÐ)ñ	Bùò <s   ÂCÂCc                 ó8  — t        j                  d¬«      }t        j                  d¬«      }|j                  dd«      }dD ]R  }|j	                  |«       |j                  |«      }|D �cg c]  }t        |«      dkD  sŒ|‘Œ }}t        |«      |k(  rŒRJ ‚ yc c}w )z1
        Test the parameter minor_number
        Tr©   r¢   r   )r   r‘   rh   rn  r   N)r+   rh  rÞ  r-   Úset_minor_numberrñ  rÉ   )r.   rô  rõ  rq  Úminor_numberrø  rù  rú  s           r3   Útest_minor_numberz$TestLogitFormatter.test_minor_numbera  s—   € ô ×&Ñ&¨TÔ2ˆÜ×)Ñ)°Ô5ˆØ×#Ñ# D¨(Ó3ˆØ)ò 	1ˆLØ×%Ñ% lÔ3Ø ×-Ñ-¨eÓ4ˆIØ#,Ö;˜a´°A³¸³
šÐ;ˆHÐ;Ü�x“= LÓ0Ð0Ð0ñ		1ùò <s   Á*BÁ>Bc                 óÎ   — d}d}d}t        j                  d¬«      } ||«      |k(  sJ ‚|j                  d«        ||«      |k(  sJ ‚|j                  d«        ||«      |k(  sJ ‚y)z1
        Test the parameter use_overline
        ré  z$\mathdefault{1-10^{-2}}$z"$\mathdefault{\overline{10^{-2}}}$FrÜ  TN)r+   rÞ  rÝ  )r.   rÕ   Úfx1Úfx2Úforms        r3   Útest_use_overlinez$TestLogitFormatter.test_use_overlinen  so   € ð ˆØ*ˆØ3ˆÜ×%Ñ%°5Ô9ˆÙ�A‹w˜#Š~Ðˆ~Ø×Ñ˜$ÔÙ�A‹w˜#Š~Ðˆ~Ø×Ñ˜%Ô Ù�A‹w˜#Š~Ð‰~r5   c                 ó¸   — t        j                  «       }d |d«      v sJ ‚|j                  d«       d |d«      v sJ ‚|j                  d«       d |d«      v sJ ‚y)z-
        Test the parameter one_half
        z\frac{1}{2}r   z1/2zone halfN)r+   rÞ  Úset_one_half)r.   r  s     r3   Útest_one_halfz TestLogitFormatter.test_one_half|  sd   € ô ×%Ñ%Ó'ˆØ¡ c£Ñ*Ð*Ð*Ø×Ñ˜%Ô Ø™˜S›	Ñ!Ð!Ð!Ø×Ñ˜*Ô%Ø™T #›YÑ&Ð&Ñ&r5   ræ  )r	   éý   iò  c                 ó  — t        j                  dd|«      dd }t        j                  «       }|D ]W  }|j	                  |«      }|j                  d«      rdt        |dd  «      z
  }nt        |«      }t        ||z
  «      d|z  k  rŒWJ ‚ y )Nr   r   r   z1-r   )rM   rr   r+   rÞ  r÷  Ú
startswithrq  Úabs)r.   ræ  rh  r  rÕ   rÙ  rá  s          r3   Útest_format_data_shortz)TestLogitFormatter.test_format_data_short‡  s‹   € ä�{‰{˜1˜a Ó# A bÐ)ˆÜ×%Ñ%Ó'ˆØò 	'ˆAØ×'Ñ'¨Ó*ˆBØ�}‰}˜TÔ"Øœ˜r ! "˜v›Ñ&‘ä˜2“Y�Ü�q˜2‘v“;  Q¡Ó&Ð&Ð&ñ	'r5   N)rJ   rK   rL   r^  rÖ  r@   rR   rS   rÚ  rg  rx  rß  r4   rã  rM   Úexprr   rê  Úlims_minor_majorrû  rÿ  r  r  r  )r“  Úis   00r3   rÍ  rÍ  â  s›  „ Øñ<ó ð<ð@ ‡[�[×ÑØò	
ó
ñ.ó
ð.ñ Ù" 1 b›\×*˜ˆ��‹Ó*Ù#(¨¨B£<×
0˜aˆ1ˆr�q�b‰z‹>Ó
0ñ	1àˆ'ñ	ó€Kð ‡[�[×Ñ˜S +Ó.ñ	+ó /ð	+ð ‡[�[×Ñ˜SÐ"?Ó@ñó Aðð ‡[�[×Ñ˜S ! q¨6¨2¯6©6°;°2·;±;¸rÀ1ÀbÓ3IÐ2IÓ+JÑ'JÑ"KÓLñ%ó Mð%ò Ðð ‡[�[×ÑÐ2Ð4DÓEñBó FðBò(1òò	'ð ‡[�[×Ñ˜S /Ó2ñ	'ó 3ñ	'ùóa 	+ùÛ
0s   ¿E
ÁE rÍ  c                   ó   — e Zd Zd„ Zy)ÚTestFormatStrFormatterc                 óH   — t        j                  d«      }d |d«      k(  sJ ‚y )Nz%05dÚ00002r   )r+   ÚFormatStrFormatterr  s     r3   r4   z!TestFormatStrFormatter.test_basic•  s$   € ä×-Ñ-¨fÓ5ˆØ™( 1›+Ò%Ð%Ñ%r5   N)rJ   rK   rL   r4   r?   r5   r3   r  r  ”  s   „ ó&r5   r  c                   óX   — e Zd ZddgZej
                  j                  de«      d„ «       Zy)ÚTestStrMethodFormatter)z{x:05d})r   r  )z{x:03d}-{pos:02d})r   r   z002-01zformat, input, expectedc                 óB   — t        j                  |«      } ||Ž |k(  sJ ‚y rª  )r+   ÚStrMethodFormatter)r.   ÚformatÚinputr1   r.  s        r3   r4   z!TestStrMethodFormatter.test_basic¡  s$   € ä×(Ñ(¨Ó0ˆÙ�Eˆ{˜hÒ&Ð&Ñ&r5   N)rJ   rK   rL   r|  r@   rR   rS   r4   r?   r5   r3   r  r  ›  s6   „ à"Ø/ð€Ið
 ‡[�[×ÑÐ6¸	ÓBñ'ó Cñ'r5   r  c                   óX   — e Zd Zg d¢Zej
                  j                  de«      d„ «       Zy)ÚTestEngFormatter))FççÆô„EJ“À)z
-1.23457 kú-1 kz-1.23 k)Tr  )u   âˆ’1.23457 kõ   âˆ’1 ku	   âˆ’1.23 k)FçÞƒBÊÀó¿)z-1.23457rò  z-1.23)Tr   )u
   âˆ’1.23457rñ  u   âˆ’1.23)Fç_c97Ýš¿¿)z
-123.457 mz-123 mz	-123.46 m)Tr!  )u   âˆ’123.457 mu   âˆ’123 mu   âˆ’123.46 m)FçQ^•-':T¿)z
-1.23457 mz-1 mz-1.23 m)Tr"  )u   âˆ’1.23457 mu   âˆ’1 mu	   âˆ’1.23 m)Tg       €©rU  rU  z0.00©Tr   r#  r$  )Tg›áÀm¶´>)u
   1.23457 Âµu   1 Âµu   1.23 Âµ)Tg_c97Ýš¿?)z	123.457 mz123 mz123.46 m)Tr£   )ú100 mr%  z100.00 m)Tr   )rV  rV  z1.00)TgÞƒBÊÀó?)z1.23457rV  z1.23)Tg33333?�@)z999.9ú1 kz999.90)Tg*:’Ëÿ?�@©r&  r&  ú1.00 k)Fç*:’Ëÿ?�À)r  r  z-1.00 k)Tr)  )r  r  u	   âˆ’1.00 k)Tr  r'  )Tié  )z1.001 kr&  r(  )Ti¡† )z	100.001 kz100 kz100.00 k)Tg¬Z¤$.A)z	987.654 kz988 kz987.65 k)TgCY¸,dRÎF)ú1230 Qr*  z	1230.00 Qzunicode_minus, input, expectedc                 ó°  ‡‡	‡
— |t         j                  d<   dŠ	dŠ|}t        j                  «       t        j                  d¬«      t        j                  d¬«      f}t	        ||«      D ]  \  }} ||«      |k(  rŒJ ‚ ˆˆ	fd„|D «       }t        j                  ‰	¬«      t        j                  ‰	d¬	«      t        j                  ‰	d¬	«      f}t	        ||«      D ]  \  }} ||«      |k(  rŒJ ‚ d
D ]å  Š
ˆˆ	ˆ
fd„|D «       }t        j                  ‰	‰
¬«      t        j                  ‰	d‰
¬«      t        j                  ‰	d‰
¬«      f}t	        ||«      D ]  \  }} ||«      |k(  rŒJ ‚ ˆ
fd„|D «       }t        j                  ‰
¬«      t        j                  d‰
¬«      t        j                  d‰
¬«      f}t	        ||«      D ]  \  }} ||«      |k(  rŒJ ‚ Œç y)aá  
        Test the formatting of EngFormatter for various values of the 'places'
        argument, in several cases:

        0. without a unit symbol but with a (default) space separator;
        1. with both a unit symbol and a (default) space separator;
        2. with both a unit symbol and some non default separators;
        3. without a unit symbol but with some non default separators.

        Note that cases 2. and 3. are looped over several separator strings.
        rô  rà  Ú
0123456789r   )Úplacesr   c              3   óF   •K  — | ]  }|d    ‰v r|dz   ‰z   n|‰z   –— Œ y­w©r   ú Nr?   )r“  Ú_sÚDIGITSÚUNITs     €€r3   ú	<genexpr>z/TestEngFormatter.test_params.<locals>.<genexpr>ð  s8   øè ø€ ò :Ø*,ð +-¨R©&°FÑ*:�r˜C‘x $’Ø ™Ió&ñ :ùs   ƒ!)Úunit)r5  r-  )rL  u   â€¯z@_@c              3   óf   •K  — | ](  }|d    ‰v r|‰z   ‰z   n|j                  d‰«      ‰z   –— Œ* y­wr/  ©rf  )r“  r1  r2  r3  Ú_seps     €€€r3   r4  z/TestEngFormatter.test_params.<locals>.<genexpr>   sE   øè ø€ ò /à!ð 02°"©v¸Ñ/?˜2 ™9 tÒ+Ø "§
¡
¨3°Ó 5¸Ñ <ó=ñ /ùs   ƒ.1)r5  r  )r5  r-  r  c              3   óB   •K  — | ]  }|j                  d ‰«      –— Œ y­w)r0  Nr7  )r“  r1  r8  s     €r3   r4  z/TestEngFormatter.test_params.<locals>.<genexpr>  s   øè ø€ ÒD°R˜2Ÿ:™: c¨4×0ÑDùs   ƒ)r  )r-  r  N)r«   r=  r+   ÚEngFormatterr  )r.   rù  r  r1   Úexp_outputsÚ
formattersÚ
_formatterÚ_exp_outputr2  r3  r8  s           @@@r3   Útest_paramszTestEngFormatter.test_paramsÐ  sù  ú€ ð .;Œ�‰Ð)Ñ*ØˆØˆð ˆä× Ñ Ó"Ü× Ñ ¨Ô*Ü× Ñ ¨Ô*ð
ˆ
ô
 (+¨:°{Ó'Cò 	4Ñ#ˆJ˜Ù˜eÓ$¨Ó3Ð3Ð3ð	4ô:Ø08ô:ˆô × Ñ  dÔ+Ü× Ñ  d°1Ô5Ü× Ñ  d°1Ô5ð
ˆ
ô
 (+¨:°{Ó'Cò 	4Ñ#ˆJ˜Ù˜eÓ$¨Ó3Ð3Ð3ð	4ð
 =ò 	8ˆDõ/à%-ô/ˆKô ×$Ñ$¨$°DÔ9Ü×$Ñ$¨$°q¸dÔCÜ×$Ñ$¨$°q¸dÔCðˆJô
 ,/¨z¸;Ó+Gò 8Ñ'�
˜KÙ! %Ó(¨KÓ7Ð7Ð7ð8ó E¸8ÔDˆKä×$Ñ$¨Ô.Ü×$Ñ$¨A°4Ô8Ü×$Ñ$¨A°4Ô8ðˆJô
 ,/¨z¸;Ó+Gò 8Ñ'�
˜KÙ! %Ó(¨KÓ7Ð7Ð7ñ8ñ1	8r5   N)rJ   rK   rL   Úraw_format_datar@   rR   rS   r?  r?   r5   r3   r  r  §  s3   „ ò#€OðJ ‡[�[×ÑÐ=¸ÓOñD8ó PñD8r5   r  c                  óÂ  — t        j                  «       \  } }|j                  g d¢g d¢«       |j                  g d¢«       t	        j
                  d¬«      t	        j
                  d¬«      fD ]k  }|j                  j                  |«       | j                  j                  «        |j                  «       D �cg c]  }|j                  «       ‘Œ }}|g d¢k(  rŒkJ ‚ y c c}w )N)r   rÜ  r  T)Úusetex)ÚuseMathText)z$0$z$500$z$1$ k)r«   r¬   rC  rÈ   r+   r:  r¯   r   r9  r:  Úget_xticklabelsÚget_text)r²   r³   rÿ  ÚlablÚx_tick_label_texts        r3   Ú$test_engformatter_usetex_useMathTextrH    s²   € Ü�l‰l‹n�G€CˆØ‡G�GŠNšNÔ+Ø‡M�M’.Ô!Ü×*Ñ*°$Ô7Ü×*Ñ*°tÔ<ð>ò >ˆ	à
�‰×$Ñ$ YÔ/Ø�
‰
�‰ÔØ9;×9KÑ9KÓ9MÖN°˜TŸ]™]�_ÐNÐÐNð !Ò$=Ó=Ð=Ð=ñ>ùò Os   Â7Cc                   ó°   — e Zd Zg d¢Zg d¢Zg d¢Zej                  j                  dee¬«      d„ «       Z	ej                  j                  de«      d„ «       Z
y	)
ÚTestPercentFormatter))r	   r   ú%rí  r	   z120%)r	   r   rK  r	   éZ   z100%)r	   r   rK  rL  rÛ  z90%)r	   r   rK  r¸   r?  z-2%)r	   r   rK  g     €V@r	   z90.0%)r	   r   rK  gfffffT@rL  z80.1%)r	   r   rK  g…ëQ¸ŽQ@rÛ  z70.2%)r	   r   rK  gôýÔxéFNÀr?  z-60.6%)r	   NrK  é_   r   z95.00%)r   NrK  r[   r   z300%)ç      1@NrK  r   g      !@z6%)rN  NrK  r   gÍÌÌÌÌÌ @z5.9%)r    NrK  r´  g�íµ ÷Æ°>z-2000.00000%)r   r   Nr€   r	   z120.00)rì  r[   rL  rÛ  r	   z66.667)r[  Nz
^^Foobar$$é   r³  z50.0^^Foobar$$)zdecimals=0, x>100%zdecimals=0, x=100%zdecimals=0, x<100%zdecimals=0, x<0%zdecimals=1, x>100%zdecimals=1, x=100%zdecimals=1, x<100%zdecimals=1, x<0%z$autodecimal, x<100%, display_range=1z7autodecimal, x>100%, display_range=6 (custom xmax test)z;autodecimal, x<100%, display_range=8.5 (autodecimal test 1)z;autodecimal, x<100%, display_range=8.4 (autodecimal test 2)z=autodecimal, x<-100%, display_range=1e-6 (tiny display range)zNone as percent symbolzEmpty percent symbolzCustom percent symbol))FFú50\{t}%)FTz50\\\{t\}\%)TFrP  )TTrP  z2xmax, decimals, symbol, x, display_range, expected)Úidsc                 ó¼   — t        j                  |||«      }t        j                  ddi¬«      5  |j	                  ||«      |k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr‚  F©Úrc©r+   ÚPercentFormatterrˆ   r‰   Ú
format_pct)r.   ÚxmaxÚdecimalsÚsymbolrÕ   Údisplay_ranger1   rÿ  s           r3   r4   zTestPercentFormatter.test_basic[  s]   € ô
 ×,Ñ,¨T°8¸VÓDˆ	Ü�^‰^ ¨uÐ5Ô6ñ 	FØ×'Ñ'¨¨=Ó9¸XÒEÐEÑE÷	F÷ 	Fñ 	Fúó   °AÁAzis_latex, usetex, expectedc                 ó¼   — t        j                  d|¬«      }t        j                  d|i¬«      5  |j	                  dd«      |k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nz\{t}%)rZ  Úis_latexr‚  rS  rÛ  r	   rU  )r.   r^  rB  r1   r.  s        r3   Ú
test_latexzTestPercentFormatter.test_latexd  sS   € ä×&Ñ&¨hÀÔJˆÜ�^‰^ ¨vÐ6Ô7ñ 	7Ø—>‘> " cÓ*¨hÒ6Ð6Ñ6÷	7÷ 	7ñ 	7úr\  N)rJ   rK   rL   Úpercent_dataÚpercent_idsÚ
latex_datar@   rR   rS   r4   r_  r?   r5   r3   rJ  rJ  &  sp   „ ò€Lò.€Kò,€Jð ‡[�[×ÑØ@Ø˜kð ó +ñFó+ðFð ‡[�[×ÑÐ9¸:ÓFñ7ó Gñ7r5   rJ  c                  ó”  — 	 t        j                  t         j                  d«       t        j                  dd¬«      } d}| j                  |d«      }|dk(  sJ ‚d}| j                  |d«      }|d	k(  sJ ‚t        j                  d
d¬«      } d}| j                  |d«      }|dk(  sJ ‚y # t         j                  $ r t	        d«       Y y w xY w)Nzde_DE.UTF-8z9SKIP: Locale de_DE.UTF-8 is not supported on this machineT)rC  Ú	useLocalez$\mathdefault{%1.1f}$r   z$\mathdefault{0{,}5}$z,$\mathdefault{,%1.1f},$z,$\mathdefault{,0{,}5},$Fz%1.1fz0,5)r  Ú	setlocaleÚLC_ALLÚErrorÚprintr+   r  Ú_format_maybe_minus_and_locale)rq  r.  rÕ   s      r3   Ú_impl_locale_commarj  k  sÑ   € ðÜ×ÑœŸ™¨Ô6ô ×#Ñ#°ÀÔE€EØ
"€CØ×,Ñ,¨S°#Ó6€AØÐ(Ò(Ð(Ð(à
%€CØ×,Ñ,¨S°#Ó6€AØÐ+Ò+Ð+Ð+ä×#Ñ#°ÀÔF€EØ
€CØ×,Ñ,¨S°#Ó6€AØ�Š:Ð‰:øô �<‰<ò ÜÐIÔJÙðús   ‚$B& Â&CÃCc                  óÚ   — t         j                  j                  t        dddi¬«      } t	        d„ | j
                  j                  «       D «       d«      }|rt        j                  |«       y y )Nr%   Ú
MPLBACKENDÚAgg)ÚtimeoutÚ	extra_envc              3   óv   K  — | ]1  }|j                  d «      r|t        d «      d j                  «       –— Œ3 y­w)zSKIP:N)r
  rÉ   rø  )r“  Úlines     r3   r4  z$test_locale_comma.<locals>.<genexpr>ˆ  s8   è ø€ ò 2ØØŸ™¨Ô0ð œ#˜g›,˜-Ð(×.Ñ.×0ñ 2ùs   ‚79rL  )	rˆ   rÒ   Úsubprocess_run_helperrj  ÚnextÚstdoutÚ
splitlinesr@   r  )ÚprocÚskip_msgs     r3   Útest_locale_commarx  €  sj   € ô �;‰;×,Ñ,Ô-?ÈØ8DÀeÐ7Lð -ó N€Däñ 2Ø!%§¡×!7Ñ!7Ó!9ô2ð ó€Hñ Ü�‰�HÕð r5   c                  óè   — t        j                  «       \  } }t        j                  t        «      5  |j
                  j                  t        j                  «       «       d d d «       y # 1 sw Y   y xY wrª  )	r«   r¬   r@   rA   rT   r¯   r   r+   r  ©r²   r³   s     r3   Útest_majformatter_typer{  �  óM   € Ü�l‰l‹n�G€CˆÜ	�‰”yÓ	!ñ ;Ø
�‰×$Ñ$¤W×%7Ñ%7Ó%9Ô:÷;÷ ;ñ ;úó   ±.A(Á(A1c                  óè   — t        j                  «       \  } }t        j                  t        «      5  |j
                  j                  t        j                  «       «       d d d «       y # 1 sw Y   y xY wrª  )	r«   r¬   r@   rA   rT   r¯   r¿  r+   r  rz  s     r3   Útest_minformatter_typer  –  r|  r}  c                  óè   — t        j                  «       \  } }t        j                  t        «      5  |j
                  j                  t        j                  «       «       d d d «       y # 1 sw Y   y xY wrª  )	r«   r¬   r@   rA   rT   r¯   rý   r+   r«  rz  s     r3   Útest_majlocator_typer�  œ  óM   € Ü�l‰l‹n�G€CˆÜ	�‰”yÓ	!ñ ;Ø
�‰×"Ñ"¤7×#7Ñ#7Ó#9Ô:÷;÷ ;ñ ;úr}  c                  óè   — t        j                  «       \  } }t        j                  t        «      5  |j
                  j                  t        j                  «       «       d d d «       y # 1 sw Y   y xY wrª  )	r«   r¬   r@   rA   rT   r¯   rÄ   r+   r«  rz  s     r3   Útest_minlocator_typer„  ¢  r‚  r}  c                  óˆ   ‡— t        j                  «       Šˆfd„}  | ddd«        | ddd«        | ddd«        | ddd«       y )Nc                 ó8  •— | |dœ}t        j                  |¬«      5  ‰j                  dd|«      }d d d «       t        j                  j                  «       «      dkD  | k(  sJ ‚t        |j                  j                  «       «      dkD  |k(  sJ ‚y # 1 sw Y   Œ`xY w)N)zxtick.minor.visiblezytick.minor.visiblerS  r   r   )r«   r‰   Úadd_subplotrÉ   r¯   Úget_minor_ticksrñ   )ÚxminorÚyminorr  rT  r³   r²   s        €r3   Úminorticksubplotz,test_minorticks_rc.<locals>.minorticksubplot«  s�   ø€ Ø%+Ø%+ñ-ˆä�^‰^˜rÔ"ñ 	*Ø—‘  A qÓ)ˆB÷	*ô �B—H‘H×,Ñ,Ó.Ó/°!Ñ3¸Ò>Ð>Ð>Ü�B—H‘H×,Ñ,Ó.Ó/°!Ñ3¸Ò>Ð>Ñ>÷		*ð 	*ús   �BÂBFr   Tr   r[   r‘   )r«   Úfigure)r‹  r²   s    @r3   Útest_minorticks_rcr�  ¨  sE   ø€ Ü
�*‰*‹,€Cô?ñ �U˜E 1Ô%Ù�T˜5 !Ô$Ù�U˜D !Ô$Ù�T˜4 Õ#r5   z%remove_overlapping_locs, expected_num))Tr   )Nr   )Fre  c                 ó0  — t        j                  ddd¬«      }t        j                  t        |«      «      }t	        j
                  «       \  }}|j                  ||«       |j                  j                  t        j                  j                  «       «       |j                  j                  t        j                  j                  d«      «       |j                  j                  t        j                  j                  d«      «       |j                  j!                  t        j                  j                  d«      «       |j                  j#                  d«       | �| |j                  _        |j                  j$                  }||j                  j'                  «       k(  sJ ‚t	        j(                  |j                  |¬	«       |j                  j$                  }||j                  j$                  k(  sJ ‚t        |j                  j+                  «       «      |k(  sJ ‚t        |j                  j#                  «       «      |k(  sJ ‚t        |j                  j-                  «       «      |k(  sJ ‚t        |j                  j/                  «       «      |d
z  k(  sJ ‚y )Nz
2018-11-03z
2018-11-06Ú
datetime64r\  z
%a)r   r   r³  é   z%H:%Mr"   )Úremove_overlapping_locsr   )rM   rO   ÚonesrÉ   r«   r¬   rC  r¯   rý   rˆ   ÚdatesÚ
DayLocatorr   ÚDateFormatterrÄ   ÚHourLocatorr¿  rˆ  r‘  Úget_remove_overlapping_locsÚsetprÊ   Úget_minorticklabelsÚget_minorticklines)r‘  Úexpected_numÚtrÕ   r²   r³   ÚcurrentÚnews           r3   Útest_remove_overlaprŸ  º  sÔ  € ô
 	�	‰	�, °LÔA€AÜ
�‰”�A“‹€Aä�l‰l‹n�G€CˆØ‡G�GˆAˆq„Mà‡H�H×ÑœsŸy™y×3Ñ3Ó5Ô6Ø‡H�H× Ñ ¤§¡×!8Ñ!8¸Ó!@ÔAà‡H�H×ÑœsŸy™y×4Ñ4°^ÓDÔEØ‡H�H× Ñ ¤§¡×!8Ñ!8¸Ó!AÔBà‡H�H×Ñ˜RÔ ØÐ*Ø+Bˆ�‰Ô(ð �h‰h×.Ñ.€GØ�r—x‘x×;Ñ;Ó=Ò=Ð>Ð=Ü‡H�HˆR�X‰X¨wÕ7Ø
�(‰(×
*Ñ
*€CØ�2—8‘8×3Ñ3Ò3Ð4Ð3ô ˆr�x‰x×)Ñ)Ó+Ó,°Ò<Ð<Ð<äˆr�x‰x×'Ñ'Ó)Ó*¨lÒ:Ð:Ð:Üˆr�x‰x×+Ñ+Ó-Ó.°,Ò>Ð>Ð>Üˆr�x‰x×*Ñ*Ó,Ó-°¸a±Ò?Ð?Ñ?r5   ÚsubÚhiÚaardvark)r   r   c                 ó¬   — t        j                  «       }t        j                  t        «      5  |j                  | ¬«       d d d «       y # 1 sw Y   y xY w)Nr  )r+   r  r@   rA   rW   rk   )r   r:  s     r3   Útest_bad_locator_subsr¤  ß  sA   € ô 
×	Ñ	Ó	€BÜ	�‰”zÓ	"ñ  Ø
�‰˜3ˆÔ÷ ÷  ñ  ús   ®A
Á
Ar]   )r   r   r[   re  r€  c           	      ó  — t        j                  «       }|j                  | ¬«       dD ]_  }|j                  d|«      }t	        j
                  t	        j                  |j                  dd«      «      «      dk(  j                  «       rŒ_J ‚ y )Nr\   )r    r   re  r;   r"   rÛ  r	   r  r   r   é–   r   )r+   r  rk   r-   rM   Údiffrw  rG   )r]   r:  Útoprq  s       r3   Útest_small_range_loglocatorr©  è  su   € ô 
×	Ñ	Ó	€BØ‡M�M˜8€MÔ$Ø/ò FˆØ—‘˜r 3Ó'ˆÜ—‘œŸ™ §¡°°3Ó!7Ó8Ó9¸QÑ>×CÑCÕEÐEÐEñFr5   c                  óž   — t        j                  «       }  | d«      dk(  sJ ‚| j                  d«      dk(  sJ ‚| j                  d«      dk(  sJ ‚y )Nr   rL  )r+   ÚNullFormatterr)  r÷  ©rÿ  s    r3   Útest_NullFormatterr­  ò  sT   € Ü×%Ñ%Ó'€IÙ�S‹>˜RÒÐÐØ× Ñ  Ó%¨Ò+Ð+Ð+Ø×&Ñ& sÓ+¨rÒ1Ð1Ñ1r5   rÿ  c                 ó   — d| › �S )Nzval: r?   )r”  s    r3   ú<lambda>r¯  ú  s   €  e¨A¨3 K€ r5   )r:   Úbarc                 óz   — | j                  «       dk(  sJ ‚| j                  d«       | j                  «       dk(  sJ ‚y )NrL  rˆ   )Ú
get_offsetÚset_offset_stringr¬  s    r3   Útest_set_offset_stringr´  ù  s@   € ð ×ÑÓ! RÒ'Ð'Ð'Ø×Ñ Ô&Ø×ÑÓ! UÒ*Ð*Ñ*r5   )>Ú
contextlibr   r‘  r  rA  rU   ÚnumpyrM   Únumpy.testingr   r   r@   Ú
matplotlibrˆ   Úmatplotlib.pyplotÚpyplotr«   Úmatplotlib.tickerÚtickerr+   r   rY   ru   rž   r  rQ  rW  r`  r—  r�  r¢  r¸  rã  rT  rv  r~  r…  rÍ  r  r  r  rH  rJ  rj  rx  r{  r  r�  r„  r�  rR   rS   rŸ  Úzerosr¤  rƒ  rú   r©  r­  ÚFuncFormatterÚFixedFormatterr´  r?   r5   r3   ú<module>rÀ     sI  ðÝ "Û Û Û Û 	ã ß AÛ ã Ý Ý #÷,,ñ ,,÷^Fñ F÷<0!ñ 0!÷fmHñ mH÷`O7ñ O7÷dñ ÷$ñ $÷"O!ñ O!÷d	 ñ 	 ÷
!ñ 
!÷)8ñ )8÷Xb7ñ b7÷JEñ E÷P!(ñ !(÷H/ñ /÷&0ñ 0÷8Zñ Z÷zo'ñ o'÷d&ñ &÷	'ñ 	'÷n8ñ n8òb>÷B7ñ B7òJò*ò ;ò;ò;ò;ò$ð$ ‡�×ÑÐ@ð&ó'ñ@ó	'ð@ðB ‡�×Ñ˜Ø	ˆ:ÐØ€B‡H�HˆVÓð!ó ñ óð ð ‡�×Ñ˜¢\Ó2Ø‡�×Ñ�9ÓñFó ó 3ðFò2ð ‡�×Ñ˜Ø€G×ÑÑ/Ó0Ø€G×Ñ˜>Ó*ð',ó -ñ+ó-ñ+r5   