o
    ¡:´aš]  ã                   @   sÂ  d 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
mZmZmZmZ ddlmZmZ ddlmZ ddlmZ ddlmZmZmZmZmZ m!Z! ddl"Z"e"j#dkZ$d	d
„ Z%dd„ Z&edgddd„ ƒZ'dd„ Z(edgƒdd„ ƒZ)edgdddd„ ƒZ*edgdddd„ ƒZ+ej, -d¡dd „ ƒZ.ed!gddd"d#„ ƒZ/d$d%„ Z0edgdd&d'„ ƒZ1d(d)„ Z2ed*gde$rµd+ndd,d-d.„ ƒZ3d/d0„ Z4ed1gddd2d3d4„ ƒZ5ed5gƒd6d7„ ƒZ6ed8gd9dd:d;d<„ ƒZ7edgdd=d>„ ƒZ8d?d@„ Z9dAdB„ Z:dCdD„ Z;dEdF„ Z<edgddGdH„ ƒZ=dIdJ„ Z>dKdL„ Z?edMgd9dNdOdP„ ƒZ@edQgd9dNdRdS„ ƒZAedTgdgdUdVdW„ ƒZBedTgdgdUdXdY„ ƒZCdZd[„ ZDejE Fd\d]¡d^d_„ ƒZGd`da„ ZHdbdc„ ZIddde„ ZJdfdg„ ZKdhdi„ ZLdS )jz'
Tests specific to the patches module.
é    N)Úassert_almost_equalÚassert_array_equal)ÚAnnulusÚPatchÚPolygonÚ	RectangleÚFancyArrowPatch)Úimage_comparisonÚcheck_figures_equal)ÚBbox)ÚcollectionsÚcolorsÚpatchesÚpathÚ
transformsÚrcParamsÚwin32c                  C   sð   ddgddgddgg} | ddgg }t | dd}t| ¡ |ƒ | | ¡ t| ¡ |ƒ t |dd}t| ¡ | ƒ | |¡ t| ¡ | ƒ t | dd}t| ¡ | ƒ | | ¡ t| ¡ | ƒ t |dd}t| ¡ |ƒ | |¡ t| ¡ |ƒ d S )Nr   é   T©ÚclosedF)r   r   Zget_xyZset_xy)ÚxyZxyclosedÚp© r   ú?/usr/lib/python3/dist-packages/matplotlib/tests/test_patches.pyÚtest_Polygon_close   s$   



r   c            	      C   s    t  ddg¡} d}d}d}t| |||d}t| ||ƒ}t j| d }t  t  |¡t  |¡ gt  |¡t  |¡gg¡}t  || ¡ |  ¡j	|  }t
| ¡ |ƒ d S )Nç      ð?g       @é   é   g      >@©Úangleç     €f@)ÚnpÚasarrayr   ZpiÚarrayZcosZsinÚinnerÚ	get_vertsÚTr   )	ÚlocÚwidthÚheightr   Zrect1Zrect2Z	angle_radZrotation_matrixZ	new_vertsr   r   r   Útest_rotate_rect9   s   ÿr*   Zpng)Ú
extensionsc           
      C   sŽ   |   ¡ }|  ¡ }d}d\}}d}t||||d}| |¡ | ¡ |ks%J ‚t|||ƒ}	|	 ¡ dks3J ‚| |	¡ |	 |¡ |	 ¡ |ksEJ ‚d S )N©r   r   ©r   r   é   r   r   )Úadd_subplotr   Ú	add_patchZ	get_angleZ	set_angle)
Úfig_testÚfig_refÚax_testÚax_refr'   r(   r)   r   Zrect_refZ	rect_testr   r   r   Útest_rotate_rect_drawQ   s   


r5   c                  C   sH   t dddƒ ¡ d d… } t dddƒ ¡ d d… }tt |dd¡| ƒ d S )	N)éýÿÿÿéþÿÿÿr   r   éÿÿÿÿr,   r6   r7   r   )r   r%   r   r!   Zroll)Zpos_verticesZneg_verticesr   r   r   Útest_negative_rectf   s   r9   Úclip_to_bboxc            	      C   sú   t  ¡ \} }| ddg¡ | ddg¡ tj d¡ ¡ }| jddg9  _| jddg8  _tj 	¡  ¡ }| jddg9  _| jdd	g7  _tj 
||¡}tj|d
ddd}| |¡ t ddgddgg¡}| |¡}tj|d
dddd}| |¡ d S )Niîÿÿÿé   ijÿÿÿéd   é   é
   é   é   içÿÿÿç      à?ZcoralÚnone)ÚalphaÚ	facecolorÚ	edgecoloriôÿÿÿg     `SÀé2   i’ÿÿÿZgreené   Úblack)rC   rD   ÚlwrE   )ÚpltÚsubplotsÚset_xlimÚset_ylimÚmpathÚPathÚunit_regular_starZdeepcopyÚverticesÚunit_circleZmake_compound_pathÚmpatchesÚ	PathPatchr0   Úmtransformsr   r:   )	ÚfigÚaxr   Zpath2ZcombinedÚpatchÚbboxZresult_pathZresult_patchr   r   r   Útest_clip_to_bboxn   s(   ÿ


ÿrZ   Zpatch_alpha_coloringT)Úremove_textc            	      C   sÆ   t j d¡} t j ¡ }t |j| jddd… g¡}t |j| jg¡}t  ||¡}t  |d |¡}t 	¡ }t
j|gddddd	}| |¡ tj|ddddd
}| |¡ | ddg¡ | ddg¡ dS )z†
    Test checks that the patch and collection are rendered with the specified
    alpha values in their facecolor and edgecolor.
    é   Nr8   r   r?   Údashdot©r   r   r   rA   ©r   r   r   g      è?©Ú	linewidthÚ
linestylesrD   rE   ©ra   Ú	linestylerD   rE   r   ©rN   rO   rP   rR   r!   ÚconcatenaterQ   ÚcodesrJ   ÚaxesÚmcollectionsZPathCollectionZadd_collectionrS   rT   r0   rL   rM   ©	ÚstarÚcircleÚvertsrg   Z	cut_star1Z	cut_star2rW   ÚcolrX   r   r   r   Útest_patch_alpha_coloringŠ   s*   
ý
ý
ro   Zpatch_alpha_overridec            	      C   sÊ   t j d¡} t j ¡ }t |j| jd d d… g¡}t |j| jg¡}t  ||¡}t  |d |¡}t 	¡ }t
j|gdddddd	}| |¡ tj|dddddd
}| |¡ | ddg¡ | ddg¡ d S )Nr\   r8   r   r?   r]   ç      Ð?r^   r_   )ra   rb   rC   rD   rE   )ra   rd   rC   rD   rE   r   re   rj   r   r   r   Útest_patch_alpha_override©   s.   
ü
ü
rq   Údefaultc                  C   s*   t jddddd} |  ¡ d dksJ ‚d S )Nr,   r   rB   )rD   rC   r   )rJ   ÚCircleÚget_facecolor)Úcr   r   r   Útest_patch_color_noneÉ   s   rv   Zpatch_custom_linestylec            	      C   sÈ   t j d¡} t j ¡ }t |j| jd d d… g¡}t |j| jg¡}t  ||¡}t  |d |¡}t 	¡ }t
j|gddgddd}| |¡ tj|ddddd	}| |¡ | dd
g¡ | dd
g¡ d S )Nr\   r8   r   r?   )r   )r?   é   r>   rw   ©r   r   r   ©r   r   r   r`   rc   r   re   rj   r   r   r   Útest_patch_custom_linestyleÑ   s*   
ý
ý
rz   c            
      C   sÊ   t j d¡} t j ¡ }t |j| jd d d… g¡}t |j| jg¡}g d¢}t 	¡ \}}t
|ƒD ]\}}t  || |¡} tj| d|ddd}	| |	¡ q0| d|d g¡ | d|d g¡ |j ¡  d S )	Nr\   r8   )ú-ú--z-.ú:ÚsolidZdashedr]   Zdottedr   rx   ry   rc   r   )rN   rO   rP   rR   r!   rf   rQ   rg   rJ   rK   Ú	enumeraterS   rT   r0   rL   rM   ZcanvasZdraw)
rk   rl   rm   rg   rb   rV   rW   ÚiÚlsrX   r   r   r   Útest_patch_linestyle_accentsî   s"   
ýr‚   c           	      C   sÌ   t j ¡ }|  ¡ }| ¡ }tg d¢ƒD ],\}}t  |j| |j¡}tj|d|ddd}| 	|¡ tj|ddddd}| 	|¡ q| 
d|d	 g¡ | d|d	 g¡ | 
d|d	 g¡ | d|d	 g¡ d S )
N)rB   ÚNoneú Ú r   rx   ry   rc   r{   rB   r8   r   )rN   rO   rR   r/   r   rQ   rg   rS   rT   r0   rL   rM   )	r1   r2   rl   r3   r4   r€   r   r   rX   r   r   r   Útest_patch_linestyle_none  s*   
ý
ýr†   c                  C   s€   ddddddœ} dd„ |   ¡ D ƒ}tjd	i |¤Ž}|   ¡ D ] \}\}}}t||ƒ|ks-J ‚t||ƒ|ƒ t||ƒ|ks=J ‚qd S )
N)r,   r-   Z
set_center)r?   r=   Z
set_radius)r   r   Z	set_width)r   r.   Z
set_theta1)é-   rF   Z
set_theta2)ÚcenterÚrr(   Útheta1Útheta2c                 S   s   i | ]	\}}||d  “qS )r   r   )Ú.0ÚkÚvr   r   r   Ú
<dictcomp>)  s    z'test_wedge_movement.<locals>.<dictcomp>r   )ÚitemsrS   ÚWedgeÚgetattr)Z
param_dictZ	init_argsÚwÚattrZold_vZnew_vÚfuncr   r   r   Útest_wedge_movement"  s   üýr–   Zwedge_rangegffffffú?)r[   Ztolc            	   
   C   s¾   t  ¡ } d}ddgddg||d gddgd	d
gddgddgddgddgg	}t|ƒD ]%\}\}}|d }|d }tj|d |d fd||dddd}|  |¡ q)|  ddg¡ |  ddg¡ d S )NgÁoÛàÍ‚@gœ‚Þ,(J@g§ 7
m@gü¶Þ,(J@g¿mƒ7
m@r    r   éh  éZ   iÂ  iLÿÿÿé´   i|  r‡   é.   r   r   rB   r   )rD   rE   rI   r7   r=   é	   )rJ   rh   r   rS   r‘   Ú
add_artistrL   rM   )	rW   Út1Úargsr€   rŠ   r‹   ÚxÚyZwedger   r   r   Útest_wedge_range3  s*   
ø
ÿr¡   c                  C   s6  t jddd} t| ƒdksJ ‚t jddddd} t| ƒdks J ‚t jddddd} t| ƒd	ks1J ‚t jddddd
d} t| ƒdksCJ ‚t jddddd
dd} d}t| ƒ|ksXJ ‚t jddddd} d}t| ƒ|kskJ ‚t jdddd} t| ƒdks{J ‚t j	dddd} t| ƒdks‹J ‚t j
dddd} t| ƒdks›J ‚tjg d¢dd}t  |¡} t| ƒdks±J ‚t  t d ¡¡} t| ƒd!ksÁJ ‚ddgddgddgg}t  |¡} t| ƒd"ksÙJ ‚t j|d#} t| ƒd$d%… d&ksëJ ‚t  dd¡} t| ƒd'ksùJ ‚t  ddd(¡} t| ƒd)ks	J ‚t  | dd¡}t|ƒd*ksJ ‚d$S )+z©
    Check that patches have nice and working `str` representation.

    Note that the logic is that `__str__` is defined such that:
    str(eval(str(p))) == str(p)
    ©r   r   r   )r   ÚradiuszCircle(xy=(1, 2), radius=3)rG   r?   )r   r(   r)   r   z.Ellipse(xy=(1, 2), width=3, height=4, angle=5)z0Rectangle(xy=(1, 2), width=3, height=4, angle=5)r\   )rˆ   r‰   rŠ   r‹   r(   z6Wedge(center=(1, 2), r=3, theta1=4, theta2=5, width=6)rw   )r   r(   r)   r   rŠ   r‹   z>Arc(xy=(1, 2), width=3, height=4, angle=5, theta1=6, theta2=7))r   rG   r   r   )r   r‰   r(   r   z.Annulus(xy=(1, 2), r=(3, 4), width=1, angle=2)r;   )r£   z3RegularPolygon((1, 2), 20, radius=5, orientation=0))r   r£   Z
resolutionz.CirclePolygon((1, 2), radius=5, resolution=20))r(   r)   z)FancyBboxPatch((1, 2), width=3, height=4))r¢   ©r   r   r¢   Tr   zPathPatch3((1, 2) ...)©r   r   z
Polygon0()zPolygon3((1, 2) ...))r   Né   zFancyArrowPatch(Path(array(zFancyArrowPatch((1, 2)->(3, 4))ÚdatazConnectionPatch((1, 2), (3, 4))z'Shadow(ConnectionPatch((1, 2), (3, 4))))rS   rs   ÚstrÚEllipser   r‘   ÚArcr   ZRegularPolygonZCirclePolygonZFancyBboxPatchrN   rO   rT   r   r!   Úemptyr   ÚConnectionPatchÚShadow)r   Úexpectedr   r§   Úsr   r   r   Útest_patch_strP  sH   

r°   Zmulti_color_hatch)r[   Ústylec               	   C   sÖ   t  ¡ \} }| tdƒtddƒ¡}t|ƒD ]\}}| d¡ | d |¡¡ | d¡ q| 	¡  | 
d¡ tdƒD ]/}tj dd |¡i¡ t|d	 dfd
dddd}W d   ƒ n1 s^w   Y  | |¡ q9d S )Nr?   r   r\   rB   zC{}ú/Fzhatch.colorgš™™™™™Ù?gš™™™™™é?z//)ÚhatchÚfc)rJ   rK   ZbarÚranger   Zset_facecolorZset_edgecolorÚformatZ	set_hatchZautoscale_viewZ	autoscaleÚmplr±   Úcontextr   r0   )rV   rW   Zrectsr€   Úrectr‰   r   r   r   Útest_multi_color_hatch  s   

ÿýrº   zunits_rectangle.pngc                  C   s’   dd l m  m}  |  ¡  t d| j d| j fd| j d| j ¡}t ¡ \}}| 	|¡ | 
d| j d| j g¡ | d| j d| j g¡ d S )	Nr   r?   r\   r   r   rG   rw   r›   )Zmatplotlib.testing.jpl_unitsZtestingZ	jpl_unitsÚregisterrS   r   ZkmrJ   rK   r0   rL   rM   )ÚUr   rV   rW   r   r   r   Útest_units_rectangle£  s   *
r½   zconnection_patch.pngZmpl20)r±   r[   c               	   C   sl   t  dd¡\} \}}tjdddd||dd}| |¡ d}d	}d
}| ¡ }tj||||dd}| |¡ d S )Nr   r   )çš™™™™™¹?r¾   )çÍÌÌÌÌÌì?r¿   r§   ú->)ÚxyAÚxyBÚcoordsAÚcoordsBÚaxesAZaxesBÚ
arrowstyle)g333333ã?r   )ç        çš™™™™™É?zaxes fractionr{   )rÁ   rÂ   rÃ   rÄ   rÆ   )rJ   rK   rS   r¬   rœ   Zget_yaxis_transform)rV   Úax1Úax2ÚconrÁ   rÂ   rÃ   rÄ   r   r   r   Útest_connection_patch°  s   ý

ÿrÌ   c              	   C   sŽ   |   dd¡\}}tjdd|ddddd	}|  |¡ |  dd¡\}}|j}tjd
 tjd< tjdd||jd |jd fdddd	}| |¡ d S )Nr   r   )ç333333Ó?rÈ   r§   )iâÿÿÿiìÿÿÿzfigure pixelsrÀ   r?   )rÁ   rÃ   rÅ   rÂ   rÄ   rÆ   ZshrinkBz
figure.dpiúsavefig.dpir.   r;   )	rK   rS   r¬   rœ   rY   rJ   r   r(   r)   )r1   r2   rÉ   rÊ   rË   Zbbr   r   r   Útest_connection_patch_figÃ  s    ý
ýrÏ   c                  C   sX   ddl m } m} | ddddddƒ}|dd}t |df|d¡}t ¡ \}}| |¡ d S )Nr   )ÚdatetimeÚ	timedeltaéá  r   é   )Zseconds)rÐ   rÑ   rS   r   rJ   rK   r0   )rÐ   rÑ   ÚstartZdeltarX   rV   rW   r   r   r   Útest_datetime_rectangleÚ  s   
rÕ   c                  C   s¨   ddl m }  | ddddddƒ}| dddƒ}t t¡ t |df|d¡ W d   ƒ n1 s.w   Y  t t¡ t d|fd|¡ W d   ƒ d S 1 sMw   Y  d S )Nr   ©rÐ   rÒ   r   i²  r?   )rÐ   ÚpytestZraisesÚ	TypeErrorrS   r   )rÐ   rÔ   Zdt_deltar   r   r   Útest_datetime_datetime_failsæ  s   ÿ"ÿrÙ   c                     s|   t  dddd¡‰ g d¢} ˆ  ¡ ‰ˆ  ¡ ‰ˆ  d ¡‰t ‡‡‡fdd„| D ƒ¡}t ‡ fdd„| D ƒ¡}t ||k¡s<J ‚d S )	N©rA   rA   rA   r   r   ©)rÇ   rA   )rÈ   rA   )rp   rA   rÚ   c                    s   g | ]	}ˆ   |ˆˆ¡‘qS r   ©Zcontains_point©rŒ   Úpoint)r   r£   Ú	transformr   r   Ú
<listcomp>ù  s    þþz'test_contains_point.<locals>.<listcomp>c                    s   g | ]}ˆ   |¡‘qS r   rÜ   rÝ   )Úellr   r   rà   ü  s    )rS   r©   Úget_pathÚget_transformÚ_process_radiusr!   r#   Úall)Úpointsr®   Úresultr   )rá   r   r£   rß   r   Útest_contains_pointó  s   
þrè   c                  C   s`   t  dddd¡} g d¢}|  ¡ }|  ¡ }|  d ¡}| |||¡}|  |¡}t ||k¡s.J ‚d S )NrÚ   rA   r   r   rÛ   )rS   r©   râ   rã   rä   Zcontains_pointsr!   rå   )rá   ræ   r   rß   r£   r®   rç   r   r   r   Útest_contains_points   s   

ré   c                 C   sæ   t  ddg¡}t  ddg¡}dtjd< |  ¡ }tj|ddd}tj||d |d	 d
}| |¡ | |¡ | ¡ }tj|ddd}tj||j	d |  ddt  
t | ¡ ¡¡d t  
t | ¡ ¡¡d dd}| |¡ | |¡ d S )NrÈ   rÍ   r¾   ZfigurerÎ   rA   )r   r(   r)   r   r   )ZoxZoyéH   )r   r(   r)   r´   ÚecrC   )r!   r#   rJ   r   rK   rS   r   r­   r0   Zdpir"   ÚmcolorsZto_rgbrt   )r1   r2   r   ZdxyZa1r¹   ZshadowZa2r   r   r   Útest_shadow  s$   


ü
rí   c                  C   s:   ddl m }  | dddƒ}t ¡ \}}td|fd|fƒ}d S )Nr   rÖ   iÐ  r   ç{®Gáz„?)rÐ   rJ   rK   r   )rÐ   ZdtimerV   rW   Úarrowr   r   r   Útest_fancyarrow_units%  s   rð   c                  C   sè   t  ¡ \} }|jdddddddd}t ddgdd	gd
dgddgddgdd
gd	dgddgg¡}t |t |jd¡¡s<J ‚t ddgddgddgddgddgddgddgddgg¡}|jdddddddd t |t |jd¡¡srJ ‚d S )Nr   r>   r?   r   rA   )Úhead_lengthÚ
head_widthr(   g®Gáz+@g33333³$@gÍÌÌÌÌL#@g\Âõ(\$@g¤p=
×£#@g
×£p=
Ç?g
×£p=
Ç¿r   gö(\Âµ0@g®Gáz”.@g\Âõ(\û?gÂõ(\Ò?é   )rŸ   r    ZdxZdyr(   rò   rñ   )	rJ   rK   rï   r!   r#   ZallcloseÚroundrm   Úset_data)rV   rW   rï   Z	expected1Z	expected2r   r   r   Útest_fancyarrow_setdata-  s:   ùÿ
ùÿ
ÿrö   zlarge_arc.svg)r±   c                  C   s–   t  dd¡\} \}}d}d}d}||fD ]}tj||f||ddd}| |¡ | ¡  | d¡ q| d	d
¡ | dd¡ | dd¡ | dd¡ d S )Nr   r   éÒ   i½÷ÿÿi¥  r   )rI   ÚcolorÚequalrw   r=   r?   r\   iXžÿÿiPF  ià±ÿÿiÈ  )	rJ   rK   rS   rª   r0   Úset_axis_offÚ
set_aspectrL   rM   )rV   rÉ   rÊ   rŸ   r    ZdiameterrW   Úar   r   r   Útest_large_arcL  s   
rý   zall_quadrants_arcs.svgc                  C   sV  t jddddd\} }d}d}d}d}t| ¡ |ƒD ]Ž\}\}}d	}	td
d
t d¡ f||fƒD ]J\}
}t||	dD ];\}\}}tj|| |
 || |
 f|| || dd|› d| t 	t 
||¡¡d d|› d|› d	}| |¡ q:|d }	q0| | d |d ¡ | | d |d ¡ |jd	dd |jd	dd | ¡  | d¡ qd S )Nr   F)r>   r>   )ZsqueezeZfigsizei€–˜ ))r8   r8   )r8   r   r-   )r   r8   ))r   r   )r   r   )r   r8   )r8   r   )r¤   )r   r¾   )r   rî   )r   gü©ñÒMbP?r   g§èH.ÿï?)rÔ   rG   ÚCr   r—   zbig )rI   rø   Zzorderr   ZlabelÚgidi   r   )rø   rù   )rJ   rK   ÚzipZravelr!   Zsqrtr   rS   rª   Zrad2degZarctan2r0   rL   rM   ZaxhlineZaxvlinerú   rû   )rV   Zax_arrZscaleZdiag_centersZon_axis_centersZskewsrW   ZsxZsyr   ZprescaleZcentersÚjZx_signZy_signrü   r   r   r   Útest_rotated_arcs`  sB   ÿ

ÿö
çr  Zannulus)Zbaseline_imagesr+   c               
   C   sV   t  ¡ \} }tddddd}tddddd	d
ddd}| |¡ | |¡ | d¡ d S )NrÚ   rÈ   çš™™™™™©?Úg©r´   ©rA   rÍ   r¾   r‡   ÚmÚbrA   Úxxx©r´   rë   rC   r³   rù   )rJ   rK   r   r0   rû   ©rV   rW   Zcirrá   r   r   r   Útest_annulus…  s   
ÿ

r  c               
   C   s€   t  ¡ \} }tddddd}tddddd	d
ddd}| |¡ | |¡ | d¡ d|_d|_d|_d|_d|_d|_d|_d S )N)rÇ   rÇ   rÈ   rî   r  r  r¢   r¾   r   r  r  rA   r	  r
  rù   rÚ   r  r  r‡   )	rJ   rK   r   r0   rû   rˆ   Zradiir(   r   r  r   r   r   Útest_annulus_setters‘  s   
ÿ



r  c                  C   s8   ddg} t | | gƒj}t t| gƒ ¡ j|k¡sJ ‚d S )Nr   )r   Zextentsr!   rå   r   Zget_extents)rÞ   Zcorrect_extentsr   r   r   Útest_degenerate_polygon¦  s   "r  Úkwarg)rE   rD   c                 C   sJ   t jtdd tdddi| di¤Ž W d   ƒ d S 1 sw   Y  d S )NzQSetting the 'color' property will override the edgecolor or facecolor properties.)Úmatchrø   rH   r   )r×   ZwarnsÚUserWarningr   )r  r   r   r   Útest_color_override_warning¬  s
   ÿ"ýr  c                  C   s"   t t d¡ƒ} |  ¡ g ksJ ‚d S )Nr¥   )r   r!   Zzerosr%   )Zpolyr   r   r   Útest_empty_verts´  s   r  c                  C   sN   t ƒ } |  td  ¡ |  ¡ td  ksJ ‚|  d ¡ |  ¡ td ks%J ‚d S )Nzpatch.antialiased)r   Zset_antialiasedr   Zget_antialiased©rX   r   r   r   Útest_default_antialiased¹  s
   
r  c                  C   s.   t ƒ } |  d¡ |  d ¡ |  ¡ dksJ ‚d S )Nr|   r~   )r   Zset_linestyleZget_linestyler  r   r   r   Útest_default_linestyleÃ  s   

r  c                  C   ó   t ƒ } |  ¡ dksJ ‚d S )NZbutt)r   Zget_capstyler  r   r   r   Útest_default_capstyleÊ  ó   r  c                  C   r  )NZmiter)r   Zget_joinstyler  r   r   r   Útest_default_joinstyleÏ  r  r  )MÚ__doc__Znumpyr!   Znumpy.testingr   r   r×   Z
matplotlibr·   Zmatplotlib.patchesr   r   r   r   r   Zmatplotlib.testing.decoratorsr	   r
   Zmatplotlib.transformsr   Zmatplotlib.pyplotZpyplotrJ   r   ri   r   rì   r   rS   r   rN   r   rU   r   ÚsysÚplatformZon_winr   r*   r5   r9   rZ   ro   rq   r±   r¸   rv   rz   r‚   r†   r–   r¡   r°   rº   r½   rÌ   rÏ   rÕ   rÙ   rè   ré   rí   rð   rö   rý   r  r  r  r  ZmarkZparametrizer  r  r  r  r  r  r   r   r   r   Ú<module>   s„     
#










@








$



