§
    ‡Ûgâ3  ã                   óÒ  — d Z ddlZddlZddlZddlm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ZddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZmZ dd	lmZ d
„ Z ej!         "                    d¬¦  «        d„ ¦   «         Z#d„ Z$d„ Z% edgd¬¦  «        d„ ¦   «         Z&d„ Z'd„ Z(d„ Z)d„ Z* edgd¬¦  «        d„ ¦   «         Z+ ed¬¦  «        d„ ¦   «         Z,d„ Z-d„ Z. edgdd  ej/        ¦   «         d!v rd"nd¬#¦  «        d$„ ¦   «         Z0 ed%gd¬¦  «        d&„ ¦   «         Z1d'„ Z2 ed(gd)¬*¦  «        d+„ ¦   «         Z3d,„ Z4 e¦   «         d-„ ¦   «         Z5ej!         6                    d.d/d0g¦  «         ed¬¦  «        d1„ ¦   «         ¦   «         Z7d2„ Z8d3„ Z9 ed4gdd ¬5¦  «        d6„ ¦   «         Z: e¦   «         d7„ ¦   «         Z;d8„ Z< e¦   «         d9„ ¦   «         Z= ed:g¬¦  «        d;„ ¦   «         Z>dS )<z%
Tests specific to the lines module.
é    N)ÚSimpleNamespace)Úcycler)Úassert_array_equal)ÚMarkerStyle)ÚPath)Úimage_comparisonÚcheck_figures_equal)ÚMatplotlibDeprecationWarningc            	      óº   — d\  } }t          j        ddg¦  «        t          j        ddg¦  «        }}d}t          t          j        | ||||¦  «        dg¦  «         dS )zTest a problematic case.)i)  i†  g     H�@g     ÀW@g     ˜�@gÃõ(\�Â@r   N)ÚnpÚarrayr   ÚmlinesÚsegment_hits)ÚcxÚcyÚxÚyÚradiuss        úQ/granary/edev/quantum/lib/python3.11/site-packages/matplotlib/tests/test_lines.pyÚtest_segment_hitsr      s`   € à�F€BˆÝŒ8�T˜4�LÑ!Ô!¥2¤8¨S°$¨KÑ#8Ô#8€q€AØ€FÝ•vÔ*¨2¨r°1°a¸Ñ@Ô@À1À#ÑFÔFÐFÐFÐFó    é   )Úrerunsc                  ó  — d} t          j        dd| ¦  «        }t           j                             | ¬¦  «        }t	          j        ¦   «         }t	          j        ¦   «         }t          j        ||¦  «        }| 	                    d¦  «         t          t          j        |j        j        dd¬¦  «        ¦  «        }|                     |¦  «         t          t          j        |j        j        dd¬¦  «        ¦  «        }||z  }d}	||	k     sJ ‚d	S )
ac  
    GitHub issue #1256 identified a bug in Line.draw method

    Despite visibility attribute set to False, the draw method was not
    returning early enough and some pre-rendering code was executed
    though not necessary.

    Consequence was an excessive draw time for invisible Line instances
    holding a large number of points (Npts> 10**6)
    i€–˜ r   é   ©ÚsizeFr   )ÚnumberÚrepeaté   N)r   ÚlinspaceÚrandomÚnormalÚpltÚfigureÚsubplotr   ÚLine2DÚset_visibleÚminÚtimeitr   ÚcanvasÚdrawÚadd_line)
ÚNr   r   ÚfigÚaxÚlÚ	t_no_lineÚt_invisible_lineÚslowdown_factorÚslowdown_thresholds
             r   Útest_invisible_Line_renderingr6   $   sõ   € ð 	€AÝ
Œ�A�q˜!ÑÔ€AÝ
Œ	×Ò˜aÐÑ Ô €Aõ Œ*‰,Œ,€CÝ	Œ‰Œ€Bõ 	Œ�a˜ÑÔ€AØ‡M‚M�%ÑÔÐõ
 •F”M #¤*¤/¸!ÀAÐFÑFÔFÑGÔG€Ið ‡K‚K��N„N€Nõ �6œ=¨¬¬ÀÈ1ÐMÑMÔMÑNÔNÐð '¨Ñ2€OØÐØÐ/Ò/Ð/Ð/Ð/Ð/Ð/r   c                  óÜ   — t          j        ¦   «         \  } }t          j                             d¦  «         |                     t          j                             dd¦  «        dg¬¦  «         d S ©Nr   é   é   ©r   )r   r   )Ú
linestyles©r$   Úsubplotsr   r"   ÚseedÚcontourÚrandn©r/   r0   s     r   Útest_set_line_coll_dashrC   P   sU   € ÝŒl‰nŒn�G€CˆÝ„I‡N‚N�1ÑÔÐð ‡J‚J�rŒy�Š˜r 2Ñ&Ô&°K°=€JÑAÔAÐAÐAÐAr   c                  ój  — t          j        t          d¬¦  «        5  t          j        dg ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t          j        g d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        g g ¦  «        } t          j        t          ¦  «        5  |                      d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  |                      d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nzxdata must be)Úmatchr   zydata must ber   )	ÚpytestÚraisesÚRuntimeErrorr   r'   Úwarnsr
   Ú	set_xdataÚ	set_ydata©Úlines    r   Útest_invalid_line_datarN   X   s  € Ý	Œ•|¨?Ð	;Ñ	;Ô	;ð ð ÝŒ�a˜ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å	Œ•|¨?Ð	;Ñ	;Ô	;ð ð ÝŒ�b˜!ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ Œ=˜˜RÑ Ô €Dõ 
ŒÕ2Ñ	3Ô	3ð ð Ø�Š�qÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 
ŒÕ2Ñ	3Ô	3ð ð Ø�Š�qÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð sE   œ>¾AÁAÁ$BÂB
ÂB
Â?C!Ã!C%Ã(C%ÄD(Ä(D,Ä/D,Úline_dashesT)Úremove_textc                  ó|   — t          j        ¦   «         \  } }|                     t          d¦  «        dd¬¦  «         d S )Né
   r;   é   ©Ú	linestyleÚlw)r$   r>   ÚplotÚrangerB   s     r   Útest_line_dashesrY   h   s5   € åŒl‰nŒn�G€Cˆà‡G‚G�E�"‰IŒI °€GÑ3Ô3Ð3Ð3Ð3r   c                  óÌ  — t          j        ¦   «         \  } }|                     t          d¦  «        d¬¦  «         |                     t          d¦  «        d¬¦  «         |                     t          d¦  «        d¬¦  «         |                     t          d¦  «        d¬¦  «         |                     t          d¦  «        d¬¦  «         | j                             ¦   «          d S )NrR   Únone)ÚcolorÚrz.3)r   r   r   r   )r   r   r   ©r$   r>   rW   rX   r+   r,   rB   s     r   Útest_line_colorsr_   o   sµ   € ÝŒl‰nŒn�G€CˆØ‡G‚G�E�"‰IŒI˜V€GÑ$Ô$Ð$Ø‡G‚G�E�"‰IŒI˜S€GÑ!Ô!Ð!Ø‡G‚G�E�"‰IŒI˜T€GÑ"Ô"Ð"Ø‡G‚G�E�"‰IŒI˜\€GÑ*Ô*Ð*Ø‡G‚G�E�"‰IŒI˜Y€GÑ'Ô'Ð'Ø„J‡O‚OÑÔÐÐÐr   c                  ó¾   — t          j        g g ¦  «        } t          j        t          ¦  «        5  |                      d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S ©NÚfoobar)r   r'   rF   rG   Ú
ValueErrorÚ	set_colorrL   s    r   Útest_valid_colorsre   y   s™   € ÝŒ=˜˜RÑ Ô €DÝ	Œ•zÑ	"Ô	"ð !ð !Ø�Š�xÑ Ô Ð ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !ð !ð !ó   ¯AÁAÁAc                  óÐ   — t          j        ¦   «         \  } }ddddddddd	d
dg ffD ]&}|                     t          d¦  «        |¬¦  «         Œ'| j                             ¦   «          d S )Nú-Úsolidú--Údashedz-.Údashdotú:Údotted)r   N)r   © r   rR   )rU   r^   )r/   r0   Úlss      r   Útest_linestyle_variantsrq      sx   € ÝŒl‰nŒn�G€CˆØ�G˜T 8Ø�Y  XØ˜' A r 7ðð )ð )ˆð 	�Š•�b‘	”	 RˆÑ(Ô(Ð(Ð(Ø„J‡O‚OÑÔÐÐÐr   c                  ó¾   — t          j        g g ¦  «        } t          j        t          ¦  «        5  |                      d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NÚaardvark)r   r'   rF   rG   rc   Úset_linestylerL   s    r   Útest_valid_linestylesru   ‰   s›   € ÝŒ=˜˜RÑ Ô €DÝ	Œ•zÑ	"Ô	"ð 'ð 'Ø×Ò˜:Ñ&Ô&Ð&ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'ð 'ð 'rf   zdrawstyle_variants.pngc                  óè   — t          j        d¦  «        \  } }g d¢}t          |j        |¦  «        D ]@\  }}|                     t          d¦  «        |¬¦  «         |                     dd¬¦  «         ŒAd S )Né   )Údefaultz	steps-midú	steps-prez
steps-postÚstepsNéÐ  ©Ú	drawstyle)r   r    )ÚxlimÚylim)r$   r>   ÚzipÚflatrW   rX   Úset)r/   ÚaxsÚdssr0   Údss        r   Útest_drawstyle_variantsr†   �   s~   € åŒ|˜A‰Œ�H€CˆØ
LÐ
LÐ
L€Cõ
 �c”h Ñ$Ô$ð )ð )‰ˆˆBØ
�Š•�d‘” rˆÑ*Ô*Ð*Ø
�Š�F ˆÑ(Ô(Ð(Ð(ð)ð )r   )Úpng)Ú
extensionsc                 ó>  — |                       ¦   «         }t          j        d¦  «        }|                     |dz   |¦  «         |                      ¦   «         }t	          j        ¦   «                              dd¦  «        }|                     ||||j        z   ¬¦  «         d S )Nr{   g     @Ÿ@ç        )Ú	transform)Úadd_subplotr   ÚarangerW   ÚmtransformsÚAffine2DÚ	translateÚ	transData)Úfig_refÚfig_testr0   r   Úts        r   Útest_no_subslice_with_transformr•   œ   s‹   € à	×	Ò	Ñ	Ô	€BÝ
Œ	�$‰Œ€AØ‡G‚GˆA�‰H�aÑÔÐà	×	Ò	Ñ	Ô	€BÝÔÑÔ×(Ò(¨°Ñ5Ô5€AØ‡G‚GˆAˆq˜A˜bœl™N€GÑ+Ô+Ð+Ð+Ð+r   c                  ó¾   — t          j        g g ¦  «        } t          j        t          ¦  «        5  |                      d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S ra   )r   r'   rF   rG   rc   Úset_drawstylerL   s    r   Útest_valid_drawstylesr˜   §   s›   € ÝŒ=˜˜RÑ Ô €DÝ	Œ•zÑ	"Ô	"ð %ð %Ø×Ò˜8Ñ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %ð %ð %rf   c                  ó  — t          j        ddt           j        z  d¦  «        } t          j        | ¦  «        }t	          j        ¦   «         \  }}|                     | |¦  «        \  }|                     d¦  «         t          | 	                    ¦   «         j
        ¦  «        dt          | ¦  «        z  dz
  k    sJ ‚|                     d¦  «         t          | 	                    ¦   «         j
        ¦  «        t          | ¦  «        k    sJ ‚d S )Nr   r    rR   ry   r   rx   )r   r!   ÚpiÚsinr$   r>   rW   r—   ÚlenÚget_pathÚvertices)r   r   r/   r0   rM   s        r   Útest_set_drawstylerŸ   ­   sÔ   € Ý
Œ�A�q�œ‘w Ñ#Ô#€AÝ
Œˆq‰	Œ	€AåŒl‰nŒn�G€CˆØ�GŠG�A�q‰MŒM�E€DØ×Ò�{Ñ#Ô#Ð#Ýˆt�}Š}‰ŒÔ'Ñ(Ô(¨A­c°!©f¬f©H°Q©JÒ6Ð6Ð6Ð6à×Ò�yÑ!Ô!Ð!Ýˆt�}Š}‰ŒÔ'Ñ(Ô(­C°©F¬FÒ2Ð2Ð2Ð2Ð2Ð2r   Úline_collection_dashesÚmpl20)Úaarch64Úppc64leÚs390xgÍÌÌÌÌÌä?)rP   ÚstyleÚtolc                  óÜ   — t          j        ¦   «         \  } }t          j                             d¦  «         |                     t          j                             dd¦  «        dg¬¦  «         d S r8   r=   rB   s     r   Útest_set_line_coll_dash_imager¨   º   sU   € õ Œl‰nŒn�G€CˆÝ„I‡N‚N�1ÑÔÐØ‡J‚J�rŒy�Š˜r 2Ñ&Ô&°K°=€JÑAÔAÐAÐAÐAr   zmarker_fill_styles.pngc                  ó@  — t          j        g d¢dddddt          j        g d¢¦  «        g¦  «        } d}t          j        d	d	g¦  «        }t          j        d
dg¦  «        }t	          j        ¦   «         \  }}t          d¦  «        D ]j\  }}t          t          j        j	        ¦  «        D ]F\  }}	t          | ¦  «        }
|                     |dz  |z   ||z   d|dz  z  z   |d||	|	d|
|
d¬¦  «         ŒGŒk|                     d
dg¦  «         |                     ddg¦  «         d S )N©r   r   r   Úgz#ff0000ÚcÚmr   )r   r   r   Ú
lightgreenr   r   é	   zov^<>8sp*hHDdPXrR   ç      à?r    r9   rS   )	ÚmarkerÚ
markersizeÚmarkerfacecoloraltÚ	fillstyleÚlabelÚ	linewidthr\   ÚmarkeredgecolorÚmarkeredgewidthg      @éûÿÿÿé›   )Ú	itertoolsÚcycler   r   r$   r>   Ú	enumerater   r'   Ú
fillStylesÚnextrW   Úset_ylimÚset_xlim)ÚcolorsÚaltcolorr   r   r/   r0   Újr±   ÚiÚfsr\   s              r   Útest_marker_fill_stylesrÇ   Ã   sM  € åŒ_˜i˜i˜i¨¨i¸¸cÀ3Ý œh y y yÑ1Ô1ð3ñ 4ô 4€Fà€Hå
Œ�!�Q�ÑÔ€AÝ
Œ�!�Q�ÑÔ€AÝŒl‰nŒn�G€Cˆõ Ð0Ñ1Ô1ð 'ð '‰	ˆˆ6Ý�vœ}Ô7Ñ8Ô8ð 	'ð 	'‰EˆAˆrÝ˜‘L”LˆEØ�GŠG�A˜‘F˜Q‘J  A¡¨¨a°!©e©Ñ 4Ø!Ø!Ø'/Ø ØØØØ$)Ø$%ð ñ 	'ô 	'ð 	'ð 	'ð	'ð ‡K‚K��C�ÑÔÐØ‡K‚K��S�	ÑÔÐÐÐr   c                  óÂ   — t          j        g d¢t          dd¬¦  «        d¬¦  «        \  } |                      ¦   «         dk    sJ ‚|                      ¦   «         dk    sJ ‚dS )z=Test that markerfacecolor does not override fillstyle='none'.©r   r   r    Úor[   )r´   Úred)r±   ÚmarkerfacecolorN)r$   rW   r   Úget_fillstyleÚget_markerfacecolor)r1   s    r   Útest_markerfacecolor_fillstylerÏ   ã   sp   € å	Œ�)�)�)¥K°¸vÐ$FÑ$FÔ$FØ"'ð
)ñ 
)ô 
)�B€Aà�?Š?ÑÔ Ò&Ð&Ð&Ð&Ø× Ò Ñ"Ô" fÒ,Ð,Ð,Ð,Ð,Ð,r   Úscaled_linesrx   )r¥   c            	      óz  — t          j        dd¦  «        } t          j        ¦   «         \  }}g d¢}t	          t
          j        d         ¦  «        }t          t          ||¦  «        ¦  «        D ]N\  }\  }}t          j        ddd¦  «        D ]/} |j	        | |t          j
        d¦  «        z  d|z  z   f||d	œ|¤Ž Œ0ŒOd S )
Nr   é    )rk   rn   rl   úaxes.prop_cycler°   rR   é2   çš™™™™™¹?rT   )r   r!   r$   r>   r   Ú
matplotlibÚrcParamsr½   r€   rW   Úones)	Úthr/   r0   Úlins_stylesr   rÄ   rp   ÚstyrV   s	            r   Útest_lw_scalingrÜ   ë   sÚ   € å	Œ�Q˜Ñ	Ô	€BÝŒl‰nŒn�G€CˆØ1Ð1Ð1€KÝ	•
Ô#Ð$5Ô6Ñ	7Ô	7€BÝ!¥# k°2Ñ"6Ô"6Ñ7Ô7ð Mð M‰ˆ‰9ˆB�Ý”+˜b " bÑ)Ô)ð 	Mð 	MˆBØˆBŒG�B˜�"œ' "™+œ+™¨¨R©Ñ/ÐL¸2À"ÐLÐLÈÐLÐLÐLÐLð	MðMð Mr   c                  óP  — t          j        g g ¦  «        } |                      t          j        g d¢¦  «        ¦  «        sJ ‚|                      t          j        dt          j        dg¦  «        ¦  «        sJ ‚|                      ddgt          j        gdz  z   ddgz   ¦  «        rJ ‚d S )N©r   r    r   r   r   rS   éd   r   r    )r   r'   Ú
_is_sortedr   r   ÚnanrL   s    r   Útest_nan_is_sortedrâ   ö   s›   € ÝŒ=˜˜RÑ Ô €DØ�?Š?�2œ8 I I IÑ.Ô.Ñ/Ô/Ð/Ð/Ð/Ø�?Š?�2œ8 Q­¬° NÑ3Ô3Ñ4Ô4Ð4Ð4Ð4Ø�Š  1˜v­¬¨°3©Ñ6¸!¸Q¸Ñ?Ñ@Ô@Ð@Ð@Ð@Ð@Ð@r   c                 ó¼   — |                       ¦   «                              ddgd¦  «         |                      ¦   «                              g d¢g d¢dddg¬¦  «         d S )Nr   r   z-orª   )r   r   r   r    ©Ú	markevery)r>   ÚsteprW   ©r“   r’   s     r   Útest_step_markersrè   ý   sc   € à×ÒÑÔ×Ò˜a ˜V TÑ*Ô*Ð*Ø×ÒÑÔ×Ò˜I˜I˜I y y y°$À1ÀaÀ&ÐÑIÔIÐIÐIÐIr   Úparentr%   Úaxesc                 ó^  ‡ ‡‡‡— t           j                             d¦  «         t          j        ddd¦  «        }t           j                             t          |¦  «        ¦  «        }d ddg d¢ddgt          d	d
d¦  «        t          j        t          |¦  «        ¦  «        |dk             ddg	}g d¢}|dk    r|d d…         }|d d…         }ˆ fd„}ˆfd„}n`|dk    rZt          ‰  	                    dd¦  «        j
        ¦  «        Št          ‰ 	                    dd¦  «        j
        ¦  «        Šˆfd„}ˆfd„}|D ]}	 ||||	¬¦  «         Œ|D ]a}	t          j        t          |	¦  «        ¦  «                             t          ¦  «                             t          ¦  «        }
 ||||
¬¦  «         Œbd S )Né*   r   r   é   é   )r    rS   )r   rS   é   éÿÿÿÿrS   rR   r    r°   ç333333Ó?)rñ   gš™™™™™Ù?)	Ú11111111111111Ú10001000100010Ú00100001000010Ú01000100000100Ú10000000000001Ú00000101010000Ú01110001110110Ú11011011011110Ú01010011011101r%   éþÿÿÿc                ó^   •— ‰                      t          j        | |d|¬¦  «        ¦  «         d S ©NrÊ   ©r±   rå   ©Ú
add_artistr   r'   )r   r   rå   r“   s      €r   Úadd_testz test_markevery.<locals>.add_test  s@   ø€ Ø×ÒÝ”˜a ¨3¸)ÐDÑDÔDñFô Fð Fð Fð Fr   c                ó^   •— ‰                      t          j        | |d|¬¦  «        ¦  «         d S rý   rÿ   )r   r   rå   r’   s      €r   Úadd_refztest_markevery.<locals>.add_ref  s@   ø€ Ø×ÒÝ”˜a ¨3¸)ÐDÑDÔDñFô Fð Fð Fð Fr   rê   r   c                óT   •— t          ‰¦  «                             | |d|¬¦  «         d S ©Nz-gDrä   ©r¿   rW   )r   r   rå   Úaxs_tests      €r   r  z test_markevery.<locals>.add_test#  s,   ø€ Ý�‰NŒN×Ò  1 e°yÐÑAÔAÐAÐAÐAr   c                óT   •— t          ‰¦  «                             | |d|¬¦  «         d S r  r  )r   r   rå   Úaxs_refs      €r   r  ztest_markevery.<locals>.add_ref&  s,   ø€ Ý�‰MŒM×Ò˜q ! U°iÐÑ@Ô@Ð@Ð@Ð@r   rä   )r   r"   r?   r!   Úrandrœ   Úslicer�   Úiterr>   r�   r   ÚlistÚastypeÚintÚbool)r“   r’   ré   r   r   Ú
cases_testÚ	cases_refr  r  ÚcaseÚmer	  r  s   ``         @@r   Útest_markeveryr    s%  øøøø€ õ „I‡N‚N�2ÑÔÐÝ
Œ�A�q˜"ÑÔ€AÝ
Œ	�Š•s˜1‘v”vÑÔ€Aà˜˜6 : : :Ø�b�'�5  B¨™?œ?Ý”)�C ™FœFÑ#Ô# A¨¢GÔ,Ø�zð#€JðGð Gð G€Ið �ÒÐà   ”_ˆ
Ø˜c˜r˜c”Nˆ	ð	Fð 	Fð 	Fð 	Fð 	Fð	Fð 	Fð 	Fð 	Fð 	Fð 	Fð 
�6Ò	Ð	Ý˜×)Ò)¨!¨QÑ/Ô/Ô4Ñ5Ô5ˆÝ�w×'Ò'¨¨1Ñ-Ô-Ô2Ñ3Ô3ˆð	Bð 	Bð 	Bð 	Bð 	Bð	Að 	Að 	Að 	Að 	Að ð 'ð 'ˆØˆ��A Ð&Ñ&Ô&Ð&Ð&àð $ð $ˆÝŒX•d˜4‘j”jÑ!Ô!×(Ò(­Ñ-Ô-×4Ò4µTÑ:Ô:ˆØˆ��1 Ð#Ñ#Ô#Ð#Ð#ð$ð $r   c                  ó   — t          j        ¦   «         } |                      t          j        ddgddgdd¬¦  «        ¦  «         t          j        t          ¦  «        5  | j         	                    ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   rÊ   r°   rþ   )
r$   r%   r   r   r'   rF   rG   rc   r+   r,   )r/   s    r   Ú.test_markevery_figure_line_unsupported_relsizer  1  sÀ   € Ý
Œ*‰,Œ,€CØ‡N‚N•6”= ! Q ¨!¨Q¨¸ÀrÐJÑJÔJÑKÔKÐKÝ	Œ•zÑ	"Ô	"ð ð ØŒ
�ŠÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ÁBÂBÂ
Bc                  ó.  — t          j        ¦   «         \  } }|                     g d¢t          d¦  «        ¬¦  «        \  }| j                             ¦   «          |                     ¦   «         dk    sJ ‚|                     d¦  «         | j                             ¦   «          |                     t          d¦  «        ¦  «         | j                             ¦   «          t          j	        ddgddgdd	gg¦  «        }|                     g d
¢t          |¦  «        d¬¦  «        \  }|                     g d¢|d¬¦  «        \  }t          |                     ¦   «         j        |j        ¦  «         t          |                     ¦   «         j        |j        ¦  «         d S )N)r    rî   r   ÚD)r±   ÚsrÊ   rð   r   r   r    rÉ   é   )r±   Úms)r   r    r   )r$   r>   rW   r   r+   r,   Ú
get_markerÚ
set_markerr   Ú_create_closedr   rž   )r/   r0   rM   Ú	triangle1Úline2Úline3s         r   Útest_marker_as_markerstyler#  8  sb  € ÝŒl‰nŒn�G€CˆØ�GŠG�I�I�I¥k°#Ñ&6Ô&6ˆGÑ7Ô7�E€DØ„J‡O‚OÑÔÐØ�?Š?ÑÔ Ò#Ð#Ð#Ð#ð 	‡O‚O�CÑÔÐØ„J‡O‚OÑÔÐØ‡O‚O•K Ñ$Ô$Ñ%Ô%Ð%Ø„J‡O‚OÑÔÐåÔ# b¨" X°°2¨w¸¸A¸Ð$?Ñ@Ô@€IØ�WŠW�Y�Y�Y¥{°9Ñ'=Ô'=À"ˆWÑEÔE�F€EØ�WŠW�Y�Y�Y y°RˆWÑ8Ô8�F€Eå�u×'Ò'Ñ)Ô)Ô2°IÔ4FÑGÔGÐGÝ�u×'Ò'Ñ)Ô)Ô2°IÔ4FÑGÔGÐGÐGÐGr   zstriped_line.png)rP   r¥   c            	      óZ  — t           j                             d¦  «        } t          j        ¦   «         \  }}|                     |                      d¬¦  «        ddddd¬	¦  «         |                     |                      d¬¦  «        d
ddddd¬¦  «         |                     d¬¦  «         d S )Ni!N,é   r   ÚorangeÚbluerj   rS   ú )r\   ÚgapcolorrU   rV   rµ   rË   Úblack)r   )r    rS   rî   r    r°   )r\   r)  rU   rV   rµ   Úalpha)Úhandlelength)r   r"   Údefault_rngr$   r>   rW   ÚuniformÚlegend)ÚrngÚ_r0   s      r   Útest_striped_linesr2  L  s±   € å
Œ)×
Ò
 Ñ
)Ô
)€CÝŒL‰NŒN�E€A€rØ‡G‚GˆC�KŠK˜RˆKÑ Ô ¨¸6Ø˜q¨ð ñ -ô -ð -à‡G‚GˆC�KŠK˜RˆKÑ Ô ¨¸Ø'¨A°SÀð ñ Eô Eð Eà‡I‚I˜1€IÑÔÐÐÐr   c                 óº   — |                       ¦   «                              ddgg d¢¬¦  «         |                      ¦   «                              ddgg d¢¬¦  «         d S )Nr   r    rÞ   )Údashes)r   r    r   r   r    r   )rŒ   rW   rç   s     r   Útest_odd_dashesr5  W  se   € à×ÒÑÔ×Ò  A ¨y¨y¨yÐÑ9Ô9Ð9Ø×ÒÑÔ×Ò  1˜vÐ.@Ð.@Ð.@ÐÑAÔAÐAÐAÐAr   c                  óª  — t          j        ¦   «         \  } }t          | j        j        dz  | j        j        dz  dz   ¬¦  «        }|                     ddgddgd¬¦  «        \  }|                     |¦  «        \  }}|rJ ‚|                     ddgddgdd¬	¦  «        \  }|                     |¦  «        \  }}|sJ ‚t          |d
         dg¦  «         |                     ddgddgd¬¦  «        \  }|                     |¦  «        \  }}|rJ ‚| 	                    d¦  «         |                     |¦  «        \  }}|sJ ‚t          |d
         dg¦  «         d S )Nr    é   )r   r   r   r   T)Úpickerr9   )r8  Ú
pickradiusÚind)
r$   r>   r   ÚbboxÚwidthÚheightrW   Úcontainsr   Úset_pickradius)r/   r0   Úmouse_eventÚl0ÚfoundÚindicesÚl1Úl2s           r   Útest_pickingrF  ]  sp  € ÝŒl‰nŒn�G€CˆÝ! C¤H¤N°aÑ$7Ø$'¤H¤O°qÑ$8¸2Ñ$=ð?ñ ?ô ?€Kð �'Š'�1�a�&˜1˜a˜&¨ˆ'Ñ
.Ô
.�C€BØ—[’[ Ñ-Ô-�N€Eˆ7ØÐÐÐð �'Š'�1�a�&˜1˜a˜&¨¸"ˆ'Ñ
=Ô
=�C€BØ—[’[ Ñ-Ô-�N€Eˆ7Ø€L€L€LÝ�w˜u”~¨ sÑ+Ô+Ð+ð �'Š'�1�a�&˜1˜a˜&¨ˆ'Ñ
.Ô
.�C€BØ—[’[ Ñ-Ô-�N€Eˆ7ØÐÐÐØ×Ò�bÑÔÐØ—[’[ Ñ-Ô-�N€Eˆ7Ø€L€L€LÝ�w˜u”~¨ sÑ+Ô+Ð+Ð+Ð+r   c                 ó8  — t          j        ddd¦  «        }|                      ¦   «                              ||d¦  «        \  }t	          d¦  «        |d d …<   |                     d¦  «         |                     ¦   «                              g d¢g d¢dd¬¦  «         d S )	Nr   rw   r    z.-r   rz   )r   r    rî   r|   )r   r�   rŒ   rW   rX   r—   )r“   r’   r”   r1   s       r   Útest_input_copyrH  w  s˜   € õ 	Œ	�!�Q˜ÑÔ€AØ	×	Ò	Ñ	Ô	×	$Ò	$ Q¨¨4Ñ	0Ô	0�B€AÝ�‰8Œ8€A€a€a€a�Dà‡O‚O�GÑÔÐØ×ÒÑÔ×Ò˜y˜y˜y¨)¨)¨)°TÀWÐÑMÔMÐMÐMÐMr   r‡   c                 óR  — dddg d¢ddgt          ddd	¦  «        d
ddddg}t          j        d         } |t          j        ddt          |¦  «        ¦  «        ¦  «        }t          j        dd¦  «        }d|dz  z  }|                     ¦   «         }t          |¦  «        D ]'\  }}	|                     ||z
  d|	||         ¬¦  «         Œ(t          ||¬¦  «        t          j        d<   |                      ¦   «         }
t          |¦  «        D ]\  }}|
                     ||z
  d¦  «         ŒdS )z*Test that we can set markevery prop_cycle.Né   )r:   rJ  )é   é   r:   r   rð   rß   éÈ   r   rÕ   rñ   g      ø?)rŠ   rÕ   )gÍÌÌÌÌÌÜ?rÕ   Újetgš™™™™™É?gš™™™™™é?r   rS   r    zo-)rå   r\   rÓ   )r  ÚmplÚ	colormapsr   r!   rœ   rŒ   r½   rW   r   rÖ   r×   )r“   r’   ÚcasesÚcmaprÂ   r   r   rƒ   rÅ   rå   r0   r1  s               r   Útest_markevery_prop_cyclerS  ‚  sR  € ð �1�g˜|˜|˜|¨a°¨WÝ�3˜˜QÑÔ  c¨3Ø˜ð&€Eõ Œ=˜Ô€DØˆT•"”+˜c 3­¨E©
¬
Ñ3Ô3Ñ4Ô4€Få
Œ�B˜ÑÔ€AØ	ˆAˆq‰D‰€Aà
×
Ò
Ñ
Ô
€CÝ! %Ñ(Ô(ð Dð D‰ˆˆ9Ø�Š��Q‘˜¨	¸À¼ˆÑCÔCÐCÐCå-3¸eØ:@ð.Bñ .Bô .B…JÔÐ)Ñ*ð 
×	Ò	Ñ	Ô	€BÝ˜%Ñ Ô ð ð ‰ˆˆ1Ø
�Š��A‘�tÑÔÐÐðð r   )?Ú__doc__r»   Úplatformr*   Útypesr   r   Únumpyr   Únumpy.testingr   rF   rÖ   rO  Úmatplotlib.linesÚlinesr   Úmatplotlib.markersr   Úmatplotlib.pathr   Úmatplotlib.pyplotÚpyplotr$   Úmatplotlib.transformsÚ
transformsrŽ   Úmatplotlib.testing.decoratorsr   r	   Úmatplotlib._api.deprecationr
   r   ÚmarkÚflakyr6   rC   rN   rY   r_   re   rq   ru   r†   r•   r˜   rŸ   Úmachiner¨   rÇ   rÏ   rÜ   râ   rè   Úparametrizer  r  r#  r2  r5  rF  rH  rS  ro   r   r   ú<module>rg     s�  ððð ð Ð Ð Ð Ø €€€Ø €€€Ø !Ð !Ð !Ð !Ð !Ð !à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø €€€à Ð Ð Ð Ø Ð Ð Ð Ø !Ð !Ð !Ð !Ð !Ð !Ø *Ð *Ð *Ð *Ð *Ð *Ø  Ð  Ð  Ð  Ð  Ð  Ø Ð Ð Ð Ð Ð Ø +Ð +Ð +Ð +Ð +Ð +Ø OÐ OÐ OÐ OÐ OÐ OÐ OÐ OØ DÐ DÐ DÐ DÐ DÐ DðGð Gð Gð „×Ò˜!ÐÑÔð(0ð (0ñ Ôð(0ðVBð Bð Bðð ð ð  Ð�=�/¨tÐ4Ñ4Ô4ð4ð 4ñ 5Ô4ð4ðð ð ð!ð !ð !ðð ð ð'ð 'ð 'ð ÐÐ+Ð,¸$Ð?Ñ?Ô?ð	)ð 	)ñ @Ô?ð	)ð Ð Ð)Ñ)Ô)ð,ð ,ñ *Ô)ð,ð%ð %ð %ð
3ð 
3ð 
3ð ÐØÐ¨D¸Ø �Ô Ñ"Ô"Ð&EÐEÐEˆˆÈ1ðNñ Nô NðBð BñNô NðBð ÐÐ+Ð,¸$Ð?Ñ?Ô?ðð ñ @Ô?ðð>-ð -ð -ð Ð�>Ð"¨)Ð4Ñ4Ô4ðMð Mñ 5Ô4ðMðAð Að Að ÐÑÔðJð Jñ ÔðJð
 „×Ò˜ H¨fÐ#5Ñ6Ô6ØÐ Ð)Ñ)Ô)ð)$ð )$ñ *Ô)ñ 7Ô6ð)$ðXð ð ðHð Hð Hð( ÐÐ%Ð&°DÀÐHÑHÔHðð ñ IÔHðð ÐÑÔðBð Bñ ÔðBð
,ð ,ð ,ð4 ÐÑÔðNð Nñ ÔðNð Ð  Ð(Ñ(Ô(ðð ñ )Ô(ðð ð r   