a
    s=icf                     @   s   d dl m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 edgdddid	d
d Zedgddiddd Zedgddidddd Zedgdddid	dd Zedgdddid	dd Zdd Zdd Zdd  ZdS )!    )BytesION)image_comparison)FuncFormatterZbbox_inches_tightTbbox_inchestight)Zremove_textsavefig_kwargc               	   C   s  g dg dg dg dg dg} dgd  }}t | }tt |d }g }d	}tt |}td
d
\}}	t|D ]6}
|	j|| |
 ||ddd || |
  }|dg qxt	g  t
dd tjdgd dd |jdgd ddd |  tj|||dd d S )N)iR iب i{% it i}  )iv  i i0 i ir )i/\ i: iS i= i5	 )iO2 i? iL i i )ia  i i|< iD i-      g333333?g?   edgeb)bottomaligncolorr   )g333333?皙?)loc)r   r   z
lower leftZbbox_to_anchorr   r   )ZcellTextZ	rowLabelsZ	colLabelsr   )lennparangeZzerospltsubplotsrangebarappendZxticksZxlimlegendreversetable)dataZ
col_labelsZ
row_labelsrowsindZ	cell_textwidthZyofffigaxrow r%   q/home/droni/.local/share/virtualenvs/DPS-5Je3_V2c/lib/python3.9/site-packages/matplotlib/tests/test_bbox_tight.pytest_bbox_inches_tight   s2    

r'   Z bbox_inches_tight_suptile_legend)r   c                  C   s`   t jtddd t jddd t d t d d	d
 } t  j	t
|  t d d S )N
   za straight line)label)g?r
   z
upper leftr   z
Axis titlezFigure titlec                 S   s   t | dkrdS t| S d S )N   zThe number 4)intstr)yposr%   r%   r&   y_formatter6   s    z:test_bbox_inches_tight_suptile_legend.<locals>.y_formatterzX axis)r   plotr   r   r   titlesuptitlegcayaxisZset_major_formatterr   Zxlabel)r/   r%   r%   r&   %test_bbox_inches_tight_suptile_legend-   s    

r5   z)bbox_inches_tight_suptile_non_default.png皙?)r   Ztolc                  C   s    t  \} }| jdddd d S )NZBooo      ?g?)xr-   )r   r   r2   r"   r#   r%   r%   r&   +test_bbox_inches_tight_suptitle_non_default@   s    r:   Zbbox_inches_tight_clippingc                  C   s   t tdtd t  } | ddg | ddg tjddgdd| j	ddd}t
jd }| jd	9  _|j|| jd
 t  j| d S )Nr(   r   r	   id   bluer7   )	transformZ	facecoloralphag      ?)r=   )r   Zscatterr   r   r3   Zset_xlimZset_ylimmpatchesZ	RectangleZ	transDatampathPathZunit_regular_stardeepcopyZverticesZset_clip_pathZ	transAxesZgcfZartistsr   )r#   patchpathr%   r%   r&   test_bbox_inches_tight_clippingH   s    rE   Zbbox_inches_tight_rasterc                  C   s"   t  \} }|jddgdd dS )z$Test rasterization with tight_layout      ?g       @TZ
rasterizedN)r   r   r0   r9   r%   r%   r&   test_bbox_inches_tight_raster]   s    rH   c                  C   s@   t  \} }|jddtdfd |  | jt ddd d S )Nr   r   nan)Zxyr   Zpng)r   format)r   r   Zannotatefloatset_axis_offsavefigr   r9   r%   r%   r&   test_only_on_non_finite_bboxe   s    rN   c                  C   sn   t  \} }|tdd |jdd t }| j|dd |	d t 
|j\}}}||ksjJ d S )Nr*   )   rO   )r   r6   )Zylimr   )r   r   )r   r   Z
pcolorfastr   r   reshapesetr   rM   seekZimreadshape)r"   r#   bufheightr!   _r%   r%   r&   test_tight_pcolorfastm   s    
rW   c            	      C   s4  ddl m}  d\}}d}tjd||| || fd}t|g d}|| |  |jd |j	d t
|| ||}|j|dd	 |jt d
ddd t }|j|d
dd |d t
| |}|d d d d df dk sJ |d d d d d df dk r J |jdks0J d S )Nr   )Image)r(      r;   F)ZframeondpiZfigsize)        r[   rF   rF   TrG   r   Zpdf)r   
pad_inchesrJ   )r   r\         )rY   r(   r*   )ZPILrX   r   ZfigureZAxesZadd_axesrL   ZxaxisZset_visibler4   r   r   rP   ZimshowrM   r   rR   ZasarrayopenallrS   )	rX   Zx_sizeZy_sizerZ   r"   r#   r   outZimr%   r%   r&   test_noop_tight_bboxz   s&    

"(rb   )ior   numpyr   Zmatplotlib.testing.decoratorsr   Zmatplotlib.pyplotZpyplotr   Zmatplotlib.pathrD   r@   Zmatplotlib.patchesZpatchesr?   Zmatplotlib.tickerr   r'   r5   r:   rE   rH   rN   rW   rb   r%   r%   r%   r&   <module>   s<   




