
    P/Phl                         d dl Z d dlmZ d dlZd dlmZ d dlZ	d dl
Z
d dlmZ d Zd Zd Zd Zd Zd	 Zd
 Zd Zd Zd Zd Zd ZdS )    N)StringIO)cyclerc                  2   t          j                    \  } }|                    t          dg d                     t	          d          D ]2}|                    t	          d          t	          d                     3d |j        D             g dk    sJ d S )Ncolorrgy   
   c                 6    g | ]}|                                 S  	get_color.0ls     \/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/matplotlib/tests/test_cycles.py
<listcomp>z)test_colorcycle_basic.<locals>.<listcomp>        ,,,aAKKMM,,,    r   r	   r
   r   pltsubplotsset_prop_cycler   rangeplotlinesfigax_s      r   test_colorcycle_basicr$      s    lnnGCfWooo667771XX & &
b		599%%%%,,28,,,0D0D0DDDDDDDr   c                     t          j                    \  } }|                    t          dg d          t          dg d          z              t	          d          D ]2}|                    t	          d          t	          d                     3d |j        D             g dk    sJ d	 |j        D             g d
k    sJ d S )Ncr   marker.*xr   r   c                 6    g | ]}|                                 S r   r   r   s     r   r   z%test_marker_cycle.<locals>.<listcomp>   r   r   r   c                 6    g | ]}|                                 S r   
get_markerr   s     r   r   z%test_marker_cycle.<locals>.<listcomp>        ---qALLNN---r   r)   r*   r+   r)   r   r    s      r   test_marker_cycler2      s    lnnGCfS///22X778 9 9 91XX & &
b		599%%%%,,28,,,0D0D0DDDDD--BH---1E1E1EEEEEEEr   c                  |    t          j                    \  } }|                    t          g d                     d S )N)   +r)   r   )r'   )r   r   r   r   r!   r"   s     r   test_valid_marker_cyclesr7      s=    lnnGCf$4$4$455566666r   c                     t          j                    \  } }|                    t          j        g d          t          g d                     t          d          D ]2}|                    t          d          t          d                     3d |j        D             g dk    sJ d |j        D             g d	k    sJ d S )
Nr   r(   )r&   r'   r   r   c                 6    g | ]}|                                 S r   r   r   s     r   r   z=test_marker_cycle_kwargs_arrays_iterators.<locals>.<listcomp>)   r   r   r   c                 6    g | ]}|                                 S r   r.   r   s     r   r   z=test_marker_cycle_kwargs_arrays_iterators.<locals>.<listcomp>*   r0   r   r1   )	r   r   r   nparrayiterr   r   r   r    s      r   )test_marker_cycle_kwargs_arrays_iteratorsr>   #   s    lnnGC11!///22  4 4 41XX & &
b		599%%%%,,28,,,0D0D0DDDDD--BH---1E1E1EEEEEEEr   c                  2   t          j                    \  } }|                    t          dg d                     t	          d          D ]2}|                    t	          d          t	          d                     3d |j        D             g dk    sJ d S )Nls---:r   r   c                 6    g | ]}|                                 S r   get_linestyler   s     r   r   z-test_linestylecycle_basic.<locals>.<listcomp>2   "    000!AOO000r   rB   rC   rD   rB   r   r    s      r   test_linestylecycle_basicrJ   -   s    lnnGCfT#3#3#3445551XX & &
b		599%%%%00rx0004I4I4IIIIIIIr   c                     t          j                    \  } }|                    t          dg d          t          dg d          z   t          dg d          z              t	          d          D ]2}|                    t	          d          t	          d                     3d	 |j        D             d
 dD             k    sJ d |j        D             g dk    sJ d |j        D             g dk    sJ d S )Nr&   r   hatchxxO|-	linestylerA   r   r   c                 6    g | ]}|                                 S r   get_facecolorr   ps     r   r   z(test_fillcycle_basic.<locals>.<listcomp><   "    3331Q__333r   c                 L    g | ]!}t           j                            |          "S r   mplcolorsto_rgbar   r&   s     r   r   z(test_fillcycle_basic.<locals>.<listcomp>=   (    DDD!
""1%%DDDr   r   c                 6    g | ]}|                                 S r   	get_hatchrU   s     r   r   z(test_fillcycle_basic.<locals>.<listcomp>>        ...aAKKMM...r   )rN   rO   rP   rN   c                 6    g | ]}|                                 S r   rF   rU   s     r   r   z(test_fillcycle_basic.<locals>.<listcomp>?   "    222!AOO222r   rI   r   r   r   r   r   fillpatchesr    s      r   test_fillcycle_basicrh   5   s8   lnnGCfS???33W&7&7&7889[*:*:*:;;< = = = 1XX & &
b		599%%%%33
333DD/CDDDE E E E..2:...2I2I2IIIII22rz2226K6K6KKKKKKKr   c                     t          j                    \  } }|                    t          dg d          t          dg d          z   t          dg d          z              t	          d          }|                    ||dd	
           |                    ||d
           |                    ||           |                    ||           d |j        D             d dD             k    sJ d |j        D             g dk    sJ d S )Nr   r   rL   rM   r'   )r)   r*   Dr   r   rN   )rL   rO   c                 6    g | ]}|                                 S r   rS   rU   s     r   r   z)test_fillcycle_ignore.<locals>.<listcomp>P   rW   r   c                 L    g | ]!}t           j                            |          "S r   rY   r]   s     r   r   z)test_fillcycle_ignore.<locals>.<listcomp>Q   r^   r   )r   r   r	   r
   c                 6    g | ]}|                                 S r   r`   rU   s     r   r   z)test_fillcycle_ignore.<locals>.<listcomp>R   rb   r   )rN   rO   rO   rP   re   )r!   r"   ts      r   test_fillcycle_ignorero   B   s6   lnnGCfW77W&7&7&7889X778 9 9 9 	b		A GGAq#TG"""GGAqGGGAqMMMGGAqMMM33
333DD/CDDDE E E E..2:...2H2H2HHHHHHHr   c                  `   t          j                    \  } }|                    dddg           t          d          }t          dd          D ]}|                    ||d           |                    ||           |                    ||           d |j        D             g d	k    sJ d S )
N	linewidth   r   r   r4   皙?lwc                 6    g | ]}|                                 S r   get_linewidthr   s     r   r   z0test_property_collision_plot.<locals>.<listcomp>]   rH   r   )rs   rs   rs   rr   r   )r   r   r   r   r   r   r!   r"   rn   r&   s       r   test_property_collision_plotrz   U   s    lnnGCkAq6***b		A1a[[  
1GGAqMMMGGAqMMM00rx0004I4I4IIIIIIIr   c                     t          j                    \  } }|                    g dd           t          d          }t          dd          D ]}|                    ||d           |                    ||           |                    ||           d	 |j        D             d
 dD             k    sJ d |j        D             g dk    sJ d S )N)rr      r         bgcmy)rq   	facecolorr   r4   r   rs   rt   c                 6    g | ]}|                                 S r   rS   rU   s     r   r   z0test_property_collision_fill.<locals>.<listcomp>h   rW   r   c                 L    g | ]!}t           j                            |          "S r   rY   r]   s     r   r   z0test_property_collision_fill.<locals>.<listcomp>i   s(    777!
""1%%777r   c                 6    g | ]}|                                 S r   rw   rU   s     r   r   z0test_property_collision_fill.<locals>.<listcomp>j   rd   r   )rs   rs   rs   r}   r~   )r   r   r   r   rf   rg   ry   s       r   test_property_collision_fillr   `   s    lnnGC7CCCb		A1a[[  
1GGAqMMMGGAqMMM33
33377w7778 8 8 822rz2226K6K6KKKKKKKr   c            	      L   t          j                    \  } }|                    d            |                    t          dddg                     |                    dd           |                    dd           |                    dddg           |                    dt	          ddg                     |                    dt          j        ddg                     |                    dt          j        g dg d	g d
g                     |                    dg ddgg dg           |                    ddgddgddg           |                    t          j        ddg          t          j        ddg          t          j        ddg                     d S )Nrq   r4   rr   r   rgywkbcmru   )r4   rr   )r4   r   r   )r   r4   r   )r   r   r4   dashes   )   r|   r4   r|   kwrB   rC   )ru   r   r@   )r   r   r   r   r=   r;   r<   r6   s     r   test_valid_input_formsr   m   s   lnnGCdf[1a&11222gz***dF###kAq6***k4A<<000k28QF#3#3444grx)2)2)4  5  5 6 6 6 hb!Wlll ;<<<!QSzsDkBBB1a&))Hc3Z003+..  0 0 0 0 0r   c                     t          j                    \  } }t                      }t                      }t                      }t          j        |          5  t          j        |                    ddgd          d                    d d d            n# 1 swxY w Y   |                    g d           t          j        |          5  t          j        |                    ddgd          d                    d d d            n# 1 swxY w Y   |                                |                                k    sJ |                    d            t          j        |          5  t          j        |                    ddgd          d                    d d d            n# 1 swxY w Y   |                                |                                k    sJ d S )Nr4   rr   label)r   r   )r   	   r   )rq   )	r   r   r   
contextlibredirect_stdoutgetpr   r   getvalue)r!   r"   prop0prop1prop2s        r   test_cycle_resetr      sZ   lnnGCJJEJJEJJE		#E	*	* 4 4!Qw//23334 4 4 4 4 4 4 4 4 4 4 4 4 4 4 


+++		#E	*	* 4 4!Qw//23334 4 4 4 4 4 4 4 4 4 4 4 4 4 4>>u~~//////d		#E	*	* 4 4!Qw//23334 4 4 4 4 4 4 4 4 4 4 4 4 4 4>>u~~////////s6   2BBB
2DDD(2F&&F*-F*c                     t          j                    \  } }t          j        t          t
          f          5  |                    d           d d d            n# 1 swxY w Y   t          j        t          t
          f          5  |                    ddg           d d d            n# 1 swxY w Y   t          j        t          t
          f          5  |                    dd           d d d            n# 1 swxY w Y   t          j        t          t
          f          5  |                    dd           d d d            n# 1 swxY w Y   t          j        t          t
          f          5  |                    dddh           d d d            n# 1 swxY w Y   t          j        t          t
          f          5  |                    dd           d d d            n# 1 swxY w Y   t          j        t          t
          f          5  |                    dddg           d d d            n# 1 swxY w Y   t          j        t          t
          f          5  |                    ddg	           d d d            n# 1 swxY w Y   t          j        t          t
          f          5  |                    t          ddg	                     d d d            n# 1 swxY w Y   t          j        t
                    5  |                    t          d
d                     d d d            d S # 1 swxY w Y   d S )Nr4   rr   r   fishrq   r   )rq   r   foobar)r   rgbcmy)r   r&   )r   r   pytestraises	TypeError
ValueErrorr   r   r6   s     r   test_invalid_input_formsr      sK   lnnGC		:.	/	/  
!              		:.	/	/ " "
1a&!!!" " " " " " " " " " " " " " " 
	:.	/	/ + +
'6***+ + + + + + + + + + + + + + + 
	:.	/	/ * *
+q)))* * * * * * * * * * * * * * *		:.	/	/ / /
+1v.../ / / / / / / / / / / / / / /		:.	/	/ 2 2
AS1112 2 2 2 2 2 2 2 2 2 2 2 2 2 2 
	:.	/	/ , ,
(QF+++, , , , , , , , , , , , , , ,		:.	/	/ ) )
!Q((() ) ) ) ) ) ) ) ) ) ) ) ) ) ) 
	:.	/	/ 1 1
&A///0001 1 1 1 1 1 1 1 1 1 1 1 1 1 1	z	"	" 8 8
&u6667778 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8s   AA AB((B,/B,C66C:=C:!EEE/FFF?G##G'*G'H33H7:H7JJ
J.&K  K$'K$%L66L:=L:)r   ior   
matplotlibrZ   matplotlib.pyplotpyplotr   numpyr;   r   r   r$   r2   r7   r>   rJ   rh   ro   rz   r   r   r   r   r   r   r   <module>r      s>                                 E E EF F F7 7 7
F F FJ J J
L 
L 
LI I I&J J J
L 
L 
L0 0 0(0 0 0(8 8 8 8 8r   