+
    i                      ~   ^ RI t ^ RIHt ^ RIHtHtHtHtH	t	 ^ RIH
t ^ RIHtHt ^ RIHtHt ^ RIt^ RIHt ^ RIt^ RIt]! R.R7      R 4       tR	 t]! R
.RR7      R 4       tR tR t]! R.RR7      R 4       tR tR tR t ]! R.RRRR7      R 4       t!R t"]! R.RRR7      R 4       t#R t$R t% ! R  R!4      t&R# )"    N)
AsinhScaleAsinhTransformLogTransformInvertedLogTransformSymmetricalLogTransform)AsinhLocatorLogFormatterSciNotation)check_figures_equalimage_comparison)assert_allclosepng)
extensionsc                 R   V P                  ^zRRR7      pVP                  R4       VP                  R4       VP                  4       pVP	                  4       pVP                  ^zRRR7      pVP                  W4R7       VP                  RR.VR4       VP                  VRR.R4       R# )z   logsymlog)yscalexscaleg8@)xlimylimbN)add_subplotaxvlineaxhlineget_xlimget_ylimsetplot)fig_testfig_refax_testr   r   ax_refs   &&    {/Users/tonyclaw/.openclaw/workspace/skills/math-calculator/venv/lib/python3.14/site-packages/matplotlib/tests/test_scale.pytest_log_scalesr$      s    ""3uX"FGOODOODDD  U8 DF
JJDJ$
KKtdC(
KKtTlC(    c                  6   \        ^
^^4      p V P                  4       p\        P                  ! R^R4      pVP	                  V P	                  V4      4      p\        W24       \        V4      \        V4      J g   Q h\        P                  V^&   VP	                  V P	                  V4      4      p\        W24       \        V4      \        V4      J g   Q h\        P                  P                  V4      pVP	                  V P	                  V4      4      p\        W24       \        V4      \        V4      J g   Q h\        P                  P                  V^&   VP	                  V P	                  V4      4      p\        W24       \        V4      \        V4      J g   Q hR# )
         ?Ng      )r   invertednparangetransform_non_affiner   typenanmaarraymasked)sltsltixouts       r#   test_symlog_mask_nanr6      sB    ""a
+C<<>D
		$3A

#
#C$<$<Q$?
@CC9Q66AaD

#
#C$<$<Q$?
@CC9Q
AA

#
#C$<$<Q$?
@CC9Q55<<AaD

#
#C$<$<Q$?
@CC9Qr%   zlogit_scales.pngT)remove_textc                     \         P                  ! 4       w  r\        P                  ! . RO4      pRV,          pVP	                  W#4       VP                  R4       VP                  R4       VP                  V P                  P                  4       4      p\        P                  ! VP                  4      '       g   Q h\        P                  ! VP                  4      '       g   Q hR# )MbP?g      ?logitTN)r9   g~jth?{Gz?gQ?g?皙?g333333?g?r(   g333333?gffffff?g?g?g
ףp=
?gGz?gCl?g+?)pltsubplotsr*   r0   r   
set_xscalegridget_tightbboxcanvasget_rendererisfinitex0y0)figaxr4   ybboxs        r#   test_logit_scalesrK   :   s    llnGC 	 @ 	AAaAGGAMMM'GGDMCJJ3356D;;tww;;twwr%   c                    \         P                  ! ^4      w  r\        P                  ! ^
4      p\        P                  ! ^
4      ^,
          pVP	                  W#4       \
        P                  ! 4       pV P                  VRR7       \
        P                  ! 4       pV P                  VRR7       \
        P                  ! 4       pV P                  VRR7       R# )zIssue #1799pdf)formatepssvgN)r=   r>   r*   r+   scatterioBytesIOsavefig)rG   rH   r4   rI   bufs        r#   test_log_scatterrV   K   s    ll1oGC
		"A
		"AJJq
**,CKKEK"
**,CKKEK"
**,CKKEK"r%   c                      \         P                  ! 4       w  rVP                  R \        P                  ! . RO4      R7       V P
                  P                  4        R# )r   )subsN)         )r=   r>   
set_yscaler*   r0   rB   drawrG   rH   s     r#   test_logscale_subsr_   ^   s6    llnGCMM%bhhy1M2JJOOr%   zlogscale_mask.pngc                     \         P                  ! ^ ^2R4      p \        P                  ! 4       w  rVP	                  \         P
                  ! V ^,          ) 4      4       VP                  P                  4        VP                  RR7       R# )r   i  r   )r   N)	r*   linspacer=   r>   r   exprB   r]   r   )xsrG   rH   s      r#   test_logscale_maskrd   e   sY     
QD	!BllnGCGGBFFBE6NJJOOFF%Fr%   c                      \         P                  ! 4       w  rR FA  p\        P                  ! \        4      ;_uu_ 4        VP                  VRR7       RRR4       KC  	  R#   + '       g   i     KX  ; i)linearmask)fooN)rf   r   r   )r=   r>   pytestraises	TypeErrorr\   rG   rH   scales      r#   test_extra_kwargs_raisern   q   sJ    llnGC,]]9%%MM%VM, &% -%%%s   A!!A2c                  R   \         P                  ! 4       w  rVP                  R 4       VP                  VP                  P                  4       ,           P                  4       p\        ^R7      P                  4       p\        V\        4      '       g   Q hVP                  ^8X  g   Q hR# )r   )baseN)
r=   r>   r\   	transAxes	transDatar)   r   
isinstancer   rp   )rG   rH   tforminverted_transforms       r#   test_logscale_invert_transformrv   y   s~    llnGCMM%\\BLL1133==?E &1-668(*>????""a'''r%   c                      \         P                  ! 4       w  rVP                  R 4       \        VP                  4       \        \        ^
RR7      4       R# )r   clipnonpositiveN)r=   r>   r\   reprrr   r   r^   s     r#   test_logscale_transform_reprr|      s6    llnGCMM%bf	-.r%   zlogscale_nonpos_values.pngg{Gz?mpl20)r7   tolstylec                     \         P                  P                  R 4       \         P                  P                  \	        R4      R7      p \
        P                  ! ^^4      w  pw  w  r#w  rEVP                  V R^
R7       VP                  R4       VP                  V R^
R7       VP                  RRR7       \         P                  ! ^ ^
R4      p\         P                  ! V) 4      pR^
V,
          ,          \         P                  ! ^V,          4      ,          \         P                  ! V) 4      ,          pVP                  WgV,
          Wx,           4       VP                  R4       \         P                  ! R^4      p	V	^,          p
V	^,          pVP                  WVR	7       VP                  R4       VP                  R4       R
# )i!N,g     @@)size)rangebinsr   rg   ry   r;   r<   )yerrN)   )r*   randomseednormalintr=   r>   histr\   r+   rb   cosfill_betweenlogspaceerrorbarr?   )rc   rG   ax1ax2ax3ax4xdataydataedatar4   rI   r   s               r#   test_logscale_nonpos_valuesr      sG    IINN8			s3x		(B$'LLA$6!C	!*3jsHHRwRH(NN5HHRwRH(NN5fN-IIaT"EFFE6NEEN266!E'?*2665&>9EUEM5=9NN5
BA	QAa4DLLDL!NN5NN5r%   c                  @   \         P                  ! 4       w  rVP                  \        ^ ^4      \        ^ ^4      4       VP	                  R4       VP                  4       p\        P                  ! \        4      ;_uu_ 4        VP                  ^ R7       RRR4       VP                  4       V8X  g   Q h\        P                  ! \        4      ;_uu_ 4        VP                  RR7       RRR4       VP                  4       V8X  g   Q hVP                  R4       VP                  4       p\        P                  ! \        4      ;_uu_ 4        VP                  ^ R7       RRR4       VP                  4       V8X  g   Q h\        P                  ! \        4      ;_uu_ 4        VP                  RR7       RRR4       VP                  4       V8X  g   Q hR#   + '       g   i     ELG; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     Ld; i)r   r   )leftN)right)bottom)topr   )r=   r>   rQ   r   r?   r   ri   warnsUserWarningset_xlimr\   r   set_ylim)rG   rH   original_xlimoriginal_ylims       r#   test_invalid_log_limsr      sY   llnGCJJuQ{E!QK(MM%KKMM	k	"	"
 
#;;=M)))	k	"	"
" 
#;;=M)))MM%KKMM	k	"	"
1 
#;;=M)))	k	"	"
 
#;;=M))) 
#	"	" 
#	"	" 
#	" 
#	"s0   GG&
G:HG#	&G7	:H
	H	zfunction_scales.png)r7   r   c                      R  p R p\         P                  ! 4       w  r#\        P                  ! ^R4      pVP	                  WD4       VP                  RW3R7       VP                  ^R4       R# )c                     V ^,          # rY    r4   s   &r#   inverse$test_function_scale.<locals>.inverse   s    !tr%   c                     V R,          # )   r(   r   r   s   &r#   forward$test_function_scale.<locals>.forward   s    3xr%   i  function)	functionsN)r=   r>   r*   r+   r   r?   r   )r   r   rG   rH   r4   s        r#   test_function_scaler      sW     llnGC
		!TAGGAMMM*(:M;KK4r%   c                  X   \         P                  ! 4       w  r\        P                  ! R R7      pVP	                  V4       \        P                  ! R R7      pVP                  V4       VP                  P                  4       R8X  g   Q hVP                  P                  4       R8X  g   Q hR # )Naxisr   )	r=   r>   mscaleLogScaler?   r\   xaxis	get_scaleyaxisrl   s      r#   test_pass_scaler      sy    llnGCOO&EMM%OO&EMM%885(((885(((r%   c                     \         P                  ! R ^
R7      p \        P                  ! V 4      p\	        V P                  4       4      \	        VP                  4       4      8X  g   Q hV P                  VP                  Jg   Q hR# )r4   r   rp   N)r   r   copydeepcopystrget_transform
_transform)scsc2s     r#   test_scale_deepcopyr      s`    	c	+B
--
Cr!"c#*;*;*=&>>>>==...r%   c                   >   a  ] tR t^t o R tR tR tR tR tRt	V t
R# )TestAsinhScalec                d   R p\         P                  ! R^2^d4      p\        V4      pVP                  4       pVP                  4       pVP	                  V4      pVP	                  V4      p\        Wr4       VP	                  V4      p\        W\         P                  ! W!,          4      ,          4       R# )g      1@Ni)r*   ra   r   r)   r,   r   arcsinh)	selfa0ar   r   invinv	a_forward
a_inverteda_invinvs	   &        r#   test_transformsTestAsinhScale.test_transforms   s    KKR% $""$!!#003	11)<

&..q1rzz!&'9"9:r%   c                J   \         P                  ! 4       w  r\        R RR7      pVP                  ^8X  g   Q hVP                  ^
8X  g   Q hVP
                  R8X  g   Q hVP                  4       p\        V\        4      '       g   Q hVP                  VP                  8X  g   Q hR # )Ng      7@r   linear_width)rY   r   )	r=   r>   r   r   _base_subsr   rs   r   )r   rG   rH   stxs   &    r#   	test_initTestAsinhScale.test_init   s    ,,.Dt4~~###ww"}}ww&   __"n----!..000r%   c                   \         P                  ! 4       w  r\        R ^R7      pVP                  ^8X  g   Q hVP                  R8X  g   Q h\        R ^RR7      pVP                  ^8X  g   Q hVP                  R8X  g   Q hR # )Nr   )r   rp   rX   r   )rY   r[   )r=   r>   r   r   r   )r   rG   rH   s3s7s   &    r#   test_base_initTestAsinhScale.test_base_init   sm    ,,.T*xx1}}xx4T7xx1}}xx6!!!r%   c                    ! R  R4      pV! 4       p\        V^ R7      pVP                  V4       \        VP                  R,          \        4      '       g   Q h\        VP                  R,          \
        4      '       g   Q hV! 4       p\        V^R7      pVP                  V4       \        VP                  R,          \        4      '       g   Q h\        VP                  R,          \        4      '       g   Q hR# )c                   2   a  ] tR tRt o R tR tR tRtV tR# )-TestAsinhScale.test_fmtloc.<locals>.DummyAxisi
  c                    / V n         R # )Nfields)r   s   &r#   __init__6TestAsinhScale.test_fmtloc.<locals>.DummyAxis.__init__  s	     r%   c                >    V P                   P                  ! R/ VB  R # )Nr   )r   update)r   kwargss   &,r#   r   1TestAsinhScale.test_fmtloc.<locals>.DummyAxis.set  s    "",V,r%   c                "    WP                   R &   R# )major_formatterNr   )r   fs   &&r#   set_major_formatterATestAsinhScale.test_fmtloc.<locals>.DummyAxis.set_major_formatter  s    12-.r%   r   N)	__name__
__module____qualname____firstlineno__r   r   r   __static_attributes____classdictcell____classdict__s   @r#   	DummyAxisr   
  s     !-3 3r%   r   r   major_locatorr   N)r   #set_default_locators_and_formattersrs   r   r   r   r	   )r   r   ax0s0ax5r   s   &     r#   test_fmtlocTestAsinhScale.test_fmtloc	  s    	3 	3 kSq)
..s3#**_5|DDDD#**%67====kSq)
..s3#**_5|DDDD#**%6713 3 	3 3r%   c                   \         P                  ! 4       w  r\        P                  ! \        4      ;_uu_ 4        \        R ^ R7       R R R 4       \        P                  ! \        4      ;_uu_ 4        \        R RR7       R R R 4       \        R R7      p\        R RR7      pR #   + '       g   i     Lc; i  + '       g   i     L>; i)Nr   r   g      @r   )r=   r>   ri   rj   
ValueErrorr   )r   rG   rH   r   s1s   &    r#   test_bad_scaleTestAsinhScale.test_bad_scale  sq    ,,.]]:&&Dq1 ']]:&&Dr2 'T$T4 '&&&s   B#2B6#B3	6C	r   N)r   r   r   r   r   r   r   r   r  r   r   r   s   @r#   r   r      s#     ;
1	"3,5 5r%   r   )'r   matplotlib.pyplotpyplotr=   matplotlib.scaler   r   r   r   r   rm   r   matplotlib.tickerr   r	   matplotlib.testing.decoratorsr
   r   numpyr*   numpy.testingr   rR   ri   r$   r6   rK   rV   r_   rd   rn   rv   r|   r   r   r   r   r   r   r   r%   r#   <module>r     s      " C O  ) 	  (	) )	) 6 %&D9  :  #& &'T: ;-	(/ /0"G==2*0 ()t7K L )/E5 E5r%   