
    (ph                         S SK r S SKrS SKrS SKJr  S SKJr  S SK	J
r  S SKJr  \" S/SSS9S	 5       r\" S
/SSS9S 5       r\" S/SS\ R                   " 5       S:X  a  S OSS9S 5       rS rS rS rS rS rg)    N)
same_color)image_comparison)art3dzlegend_plot.pngTmpl20)remove_textstylec                      [         R                  " [        SS9S9u  p[        R                  " S5      nUR                  USU-
  SSSS	9  UR                  X"S-
  SSS
S	9  UR                  5         g )N3d
projection
subplot_kw
      oyzz=1)zdirlabelzz=-1)pltsubplotsdictnparangeplotlegend)figaxxs      [/var/www/html/venv/lib/python3.13/site-packages/mpl_toolkits/mplot3d/tests/test_legend3d.pytest_legend_plotr       s_    lldd&;<GC
		"AGGAq1uc5G1GGA1uc6G2IIK    zlegend_bar.pngc                      [         R                  " [        SS9S9u  p[        R                  " S5      nUR                  X"SSSS9nUR                  X"S S S	2   S
SSS9nUR                  US   US   /SS/5        g )Nr
   r   r   r   r   edgem)r   aligncolorr   gr   updown)r   r   r   r   r   barr   )r   r   r   b1b2s        r   test_legend_barr.      sv    lldd&;<GC
		"A	3fC	8B	TrT7F#	>BIIr!ubentVn-r!   z	fancy.pngx86_64gI+?)r   r   tolc            	         [         R                  " [        SS9S9u  pUR                  [        R
                  " S5      [        R                  " SS5      [        R                  " SS5      SSS9  UR                  [        R
                  " S5      [        R
                  " SS	S
5      SS9  UR                  [        R                  " SS5      [        R
                  " S5      [        R                  " SS5      SSSS9  UR                  SSSSS9  g )Nr
   r   r   r   r   zo--liner   r   r'   scatter      ?errorbar)xerrzerrr   z
lower left   z	My legend   )locncolstitle	numpoints)
r   r   r   r   r   r   fullr4   r6   r   )r   r   s     r   
test_fancyr@      s     lldd&;<GCGGBIIbM2772q>2772q>5GOJJryy}biiAr2)JDKKA		"rwwr2s*  6II,a{aIHr!   c                  8   SS/SS//n SS/SS//S	S/S
S///nS
S/SS//S	S/SS///n[         R                  " U SSS9n[         R                  " USS9n[         R                  " USS	S9n[        R                  " [	        SS9S9u  pgUR                  U5        UR                  U5        UR                  U5        UR                  X4U// SQ5      nUR                  u  pn[        X4U4XU45       H(  u  pUR                  5       S   UR                  :X  a  M(   e   g )N)r   r5   )r5   r:   )g333333?333333?)皙?rC   gffffff?rC   g?g?r5   rB   g?z--   )
linestyleslwz-.)rE   :r
   r   r   )line1line2zline 3r   )r   Line3DCollectionr   r   r   add_collectionr   legend_handleszipget_linestyles_dash_pattern)lines1lines2lines3lc1lc2lc3r   r   legh1h2h3ohlhs                 r   !test_linecollection_scaled_dashesr\   )   s8    8X"67FRy2r(#r2hR%9:FRy2r(#r2hR%9:F

 
 DQ
?C

 
 D
9C

 
 CB
?Clldd&;<GCccc
))SsO%A
BC##JBBso|4  "1%)9)9999 5r!   c                  *   [         R                  " [        SS9S9u  pUR                  SS/SS/SS9  [        R
                  " S/S/S/SS9/nUR                  US/SS	9nUS   R                  5       UR                  S   R                  5       :X  d   eg )
Nr
   r   r   r   r:   v)markerAardvark)r>   )	r   r   r   r4   r   Line3Dr   
get_markerrL   )r   r   handlesrV   s       r   test_handlerline3drd   =   s    lldd&;<GCJJ1v1vcJ*||QC!qc#67G
))Gj\Q)
7C1:  "c&8&8&;&F&F&HHHHr!   c            	      \   [         R                  SS2SS24   u  pX-  n/ SQn[        R                  " [	        SS9S9u  pEUR                  XU/ SQUSS	9nUR                  5       u  pxU/ S
Q:X  d   e[        S U 5       5      (       d   e[        S [        Xs5       5       5      (       d   eg )Nr:   r   )bluez#00FF00redr
   r   r   r      2   bothlevelscolorsextend)z
$x = 10.0$z
$x = 30.0$z
$x = 50.0$c              3   j   #    U  H)  n[        U[        R                  R                  5      v   M+     g 7fN)
isinstancempllinesLine2D.0as     r   	<genexpr>/test_contour_legend_elements.<locals>.<genexpr>P   s$     @1z!SYY--..   13c              3   Z   #    U  H!  u  p[        UR                  5       U5      v   M#     g 7frq   )r   	get_colorrw   rx   cs      r   ry   rz   Q   s)      1/41 !++-++/   )+)	r   mgridr   r   r   contourlegend_elementsallrM   )	r   r   hrn   r   r   csartistslabelss	            r   test_contour_legend_elementsr   F   s    88AbD!B$JDA	A'Flldd&;<GC	A!L	OB((*OG????@@@@@@ 1w/1 1 1 1 1r!   c            	         [         R                  SS2SS24   u  pX-  n[        R                  " [	        SS9S9u  p4UR                  XU/ SQ/ SQSS	9nUR                  R                  S
5        UR                  R                  S5        UR                  5         UR                  5       u  pgU/ SQ:X  d   eSn[        S U 5       5      (       d   e[        S [        Xh5       5       5      (       d   eg )Nr:   r   r
   r   r   rh   )#FFFF00#FF00FFz#00FFFFrk   rl   rg   rf   )z$x \leq -1e+250s$z$10.0 < x \leq 30.0$z$30.0 < x \leq 50.0$z$x > 1e+250s$)rf   r   r   rg   c              3   j   #    U  H)  n[        U[        R                  R                  5      v   M+     g 7frq   )rr   rs   patches	Rectanglerv   s     r   ry   0test_contourf_legend_elements.<locals>.<genexpr>f   s$     EWz!S[[2233Wr{   c              3   Z   #    U  H!  u  p[        UR                  5       U5      v   M#     g 7frq   )r   get_facecolorr~   s      r   ry   r   g   s*      :841 !//+Q//8r   )r   r   r   r   r   contourfcmapset_over	set_underchangedr   r   rM   )	r   r   r   r   r   r   r   r   expected_colorss	            r   test_contourf_legend_elementsr   U   s    88AbD!B$JDA	Alldd&;<GC	Q1\=" 
 
$B GGUGGfJJL((*OG ' ' ' ' <OEWEEEEE :w8: : : : :r!   c                     [         R                  " / SQ/ SQ/ SQ/5      n [        R                  " U /SS9n[        R
                  " SS0S9u  p#UR                  S	5        UR                  U5      nUR                  5       nUR                  S
   R                  5       UR                  5       :H  R                  5       (       d   eg )N)r   r   r   )r   r:   r:   )r:   r   r:   surfacer3   r   r
   r   kr   )r   asarrayr   Poly3DCollectionr   r   set_edgecoloradd_collection3dr   rL   r   r   )vertsmeshr   r   handlerV   s         r   test_legend_Poly3dCollectionr   k   s    JJ	9i89E!!5';Dll|T&:;GCs  &F
))+Cq!//1##%&'*su- - -r!   )platformnumpyr   
matplotlibrs   matplotlib.colorsr   matplotlib.testing.decoratorsr   matplotlib.pyplotpyplotr   mpl_toolkits.mplot3dr   r    r.   machiner@   r\   rd   r   r   r    r!   r   <module>r      s       ( :  & $%4wG H #$$gF. G. ;-T#++-9auFIFI:(I1:,
-r!   