o
    ¡:´ab  ã                   @   s¨   d dl mZ d dlZd dlmZ d dlmZm	Z	 d dl
mZ dd„ Zedgdd	d
d„ ƒZedgƒdd„ ƒZedgdd	dd„ ƒZdd„ Zedgƒdd„ ƒZdd„ ZdS )é    N)Úimage_comparison)Ú
CustomCellÚTable)ÚPathc                  C   s   ddg} t j| d d S )NÚbÚr)ZcellColours)ÚpltÚtable)Z
cellcolors© r
   ú=/usr/lib/python3/dist-packages/matplotlib/tests/test_table.pyÚtest_non_square	   s   r   ztable_zorder.pngT)Zremove_textc                  C   sÀ   ddgddgg} d}dd„ dD ƒ}g }t  t|ƒ¡}t| ƒD ]}||7 }| d	d„ |D ƒ¡ qt  d
dt j d¡}tj|t  	|¡ddd tj
|||ddd tj
|||ddd t g ¡ d S )NiR iØ¨ ivã  iÓÐ )ZFreezeZWindc                 S   s   g | ]}d | ‘qS )z%d yearr
   ©Ú.0Úxr
   r
   r   Ú
<listcomp>   s    ztest_zorder.<locals>.<listcomp>)éd   é2   c                 S   s   g | ]}d |d  ‘qS )z%1.1fg     @@r
   r   r
   r
   r   r      s    r   é   r   é   )ZlwÚzorderÚcenteréþÿÿÿ)ÚcellTextÚ	rowLabelsÚ	colLabelsÚlocr   zupper center)ÚnpZzerosÚlenÚreversedÚappendÚlinspaceZpir   ZplotZcosr	   Zyticks)Údatar   r   r   ZyoffÚrowÚtr
   r
   r   Útest_zorder   s2   ÿüür$   ztable_labels.pngc            	      C   sê   d} t  dd| ¡}tj |¡}dg|  g|  }t ¡ }| ddd¡}| d¡ |j||dd | ddd	¡}| d¡ |j||d
g|  dd | ddd¡}| d¡ |j||dd | ddd¡}| d¡ |j||d
g|  dd d S )Né   r   é   Ú1r   ÚoffZbest)r   Ú
rowColoursr   r   ZHeader)r   r)   r   r   )r   Ú
colColoursr   )r   r*   r   r   )	r   r    r   ÚcmZRdYlGnÚfigureÚadd_subplotÚaxisr	   )	ZdimÚcZcoloursr   ÚfigÚax1Úax2Úax3Úax4r
   r
   r   Útest_label_colours0   s>   
þ
ý
þ

ýr5   ztable_cell_manipulation.pngc                  C   s„   d} dgt | ƒ gd }dgt | ƒ }tjt | ƒdt | ƒd fd\}}t|| ƒD ]\}}|j||d|d	 | d
¡ q)t ¡  d S )N©Z
horizontalZverticalÚopenÚclosedÚTÚRÚBÚLr'   r   gš™™™™™¹?r   r&   )ZnrowsZfigsizer   )Ú	colWidthsr   r   Zedgesr(   )r   r   ÚsubplotsÚzipr	   r.   Ztight_layout)Zcellsr   r=   Ú_ZaxsÚaxÚcellr
   r
   r   Útest_diff_cell_tableU   s   "ürC   c                  C   s  d} t jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jft jt jt jt jt jff}t| |ƒD ]\}}td|ddd}tdd„ | ¡  ¡ D ƒƒ}||ks€J ‚qad S )Nr6   ©r   r   r&   )Úvisible_edgesÚwidthZheightc                 s   s    | ]\}}|V  qd S )Nr
   )r   r@   Úsr
   r
   r   Ú	<genexpr>v   s   € z"test_customcell.<locals>.<genexpr>)	r   ZMOVETOZLINETOZ	CLOSEPOLYr?   r   ÚtupleZget_pathZiter_segments)ÚtypesZcodesr#   r/   rB   Úcoder
   r
   r   Útest_customcellg   s   øýrL   ztable_auto_column.pngc            	      C   s”  t  ¡ } |  ddd¡}| d¡ |jddgddggddgd	d
gdd}| d¡ | d¡ | g d¢¡ |  ddd¡}| d¡ |jddgddggddgd	d
gdd}| d¡ | d¡ | d¡ |  ddd¡}| d¡ |jddgddggddgd	d
gdd}| d¡ | d¡ | d¡ | d¡ | d¡ |  ddd¡}| d¡ |jddgddggddgd	d
gdd}| d¡ | d¡ | d¡ d S )Nr   r&   r(   zFit Textr   z-very long long text, Longer text than defaultÚAr;   ZCol1ZCol2r   )r   r   r   r   Fé   )éÿÿÿÿr   r&   r%   rO   r   z-101)r   r,   r-   r.   r	   Zauto_set_font_sizeZset_fontsizeZauto_set_column_width)	r0   r1   Ztb1r2   Ztb2r3   Ztb3r4   Ztb4r
   r
   r   Útest_auto_columnz   sn   
ÿû


ÿû



ÿû





ÿû

rP   c                  C   s€   t  ¡ \} }t|ƒ}| dddd¡}t|tƒsJ ‚||d u s!J ‚tdddd d}||d< |d |u s5J ‚| ¡  t  |¡ d S )Nr&   r   )r&   r   rD   )rE   )r   r&   )r   r>   r   Zadd_cellÚ
isinstancer   Z
propertiesZsetp)r0   rA   r	   rB   Zcell2r
   r
   r   Útest_table_cellsµ   s   rR   )Zmatplotlib.pyplotZpyplotr   Znumpyr   Zmatplotlib.testing.decoratorsr   Zmatplotlib.tabler   r   Zmatplotlib.pathr   r   r$   r5   rC   rL   rP   rR   r
   r
   r
   r   Ú<module>   s     
 
$

: