
    e                     z    d dl Zd dlmZ d dlmZ d dlmZmZ ddl	m
Z
  G d de
          Z G d	 d
e
          ZdS )    N)Cycle)HoloMap)LabelsTiles   )TestPlotlyPlotc                   2    e Zd Zd Zd Zd Zd Zd Zd ZdS )TestLabelsPlotc                 F   t          g d          }|                     |          }|                     |d         d         d         t          j        g d                     |                     |d         d         d         t          j        g d                     |                     |d         d         d         g d	           |                     |d         d         d
         d           |                     |d         d         d         ddg           |                     |d         d         d         ddg           |                     |d         d         d         d         d           |                     |d         d         d         d         d           d S )Nr      r   )r      r   )r   r   r   datar   xr   r   r   yr   r   r   text01r   modelayoutxaxisranger   yaxisr   r   title)r   _get_plot_stateassertEqualnparrayselflabelsstates      Nlib/python3.11/site-packages/holoviews/tests/plotting/plotly/test_labelplot.pytest_labels_statez TestLabelsPlot.test_labels_state   s   999::$$V,,vq)#.0C0CDDDvq)#.0C0CDDDvq)&1???CCCvq)&16:::x1':QFCCCx1':QFCCCx1':6BCHHHx1':6BCHHHHH    c                 n   t          g d                              d          }|                     |          }|                     |d         d         d         t	          j        g d                     |                     |d         d         d         t	          j        g d	                     |                     |d         d         d
         g d           |                     |d         d         d         d
           |                     |d         d         d         ddg           |                     |d         d         d         ddg           |                     |d         d         d         d
         d           |                     |d         d         d         d
         d           d S )Nr   Tinvert_axesr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   optsr   r    r!   r"   r#   s      r'   test_labels_invertedz#TestLabelsPlot.test_labels_inverted   s   999::??D?QQ$$V,,vq)#.0C0CDDDvq)#.0C0CDDDvq)&1???CCCvq)&16:::x1':QFCCCx1':QFCCCx1':6BCHHHx1':6BCHHHHHr)   c                     t          g d                              d          }|                     |          }|                     |d         d         d         d         t	          j        g d                     d S )	Nr   )r   r   r   )r   r   r   r   sizer   r   textfontr3   r   r-   r#   s      r'   test_labels_sizezTestLabelsPlot.test_labels_size$   sw    999::??S?II$$V,,vq)*5f=rx			?R?RSSSSSr)   c                     t          g d                              d          }|                     |          }|                     |d         d         d         t	          j        g d                     d S )Nr         ?xoffsetr   r   r   )r7         ?      @r-   r#   s      r'   test_labels_xoffsetz"TestLabelsPlot.test_labels_xoffset)   r    999::???LL$$V,,vq)#.0I0IJJJJJr)   c                     t          g d                              d          }|                     |          }|                     |d         d         d         t	          j        g d                     d S )Nr   r7   yoffsetr   r   r   )g      @r;   r:   r-   r#   s      r'   test_labels_yoffsetz"TestLabelsPlot.test_labels_yoffset.   r=   r)   c                     t          g d                              d          }|                     |          }|                     |d         d         d         d           d S )Nr   Fvisibler   r   rD   )r   r.   r   r    r$   elementr&   s      r'   test_visiblezTestLabelsPlot.test_visible3   sd    :::;;@@@OO$$W--vq))4e<<<<<r)   N)	__name__
__module____qualname__r(   r/   r5   r<   rA   rG    r)   r'   r
   r
   
   s}        
I 
I 
I
I 
I 
IT T T
K K K
K K K
= = = = =r)   r
   c                   H     e Zd Z fdZd Zd Zd Zd Zd Zd Z	d Z
 xZS )	TestMapboxLabelsPlotc                    t                                                       g d| _        g d| _        d| _        t          | j                  dz  | _        d| _        t          | j                  dz  | _        t          j
        | j        g| j        g          \  | _        | _        | j        d         | j        d         c| _        | _        t          j
        | j        | j                  \  | _        | _        d S )N)i- 逄 i@B )@9i{i)ii 	= g       @)rP   rO   r   )supersetUpxsysx_rangesumx_centery_rangey_centerr   easting_northing_to_lon_latlon_centerslat_centers
lon_center
lat_centerlonslats)r$   	__class__s    r'   rR   zTestMapboxLabelsPlot.setUp;   s     .--000*DL))C/*DL))C/-2-N]Odm_.
 .
*$* ,0+;A+>@PQR@S($@$'RR	4999r)   c                    t          d          t          | j        d         | j        d         df| j        d         | j        d         df| j        d         | j        d         dfg          j                            | j        | j                  z  }|                     |          }| 	                    |d	         d         d
         | j
                   | 	                    |d	         d         d         | j                   | 	                    |d	         d         d         g d           | 	                    |d	         d         d         d           | 	                    |d         d         d         | j        | j        d           d S )N r   Ar   Br   C)r   r   r   lonlatr   )rd   re   rf   r   r   mapboxcenter)rh   rg   )r   r   rS   rT   redimr   rU   rX   r   r    r_   r`   r^   r]   r#   s      r'   r(   z&TestMapboxLabelsPlot.test_labels_stateK   sy   rVWQZS)WQZS)WQZS)%
   ldl  
 
	
 $$V,,vq)%0$)<<<vq)%0$)<<<vq)&1???CCCvq)&16:::(OH%h/t2 2	
 	
 	
 	
 	
r)   c                 N   t          d          t          g d                              d          z  }|                     t                    5 }|                     |           d d d            n# 1 swxY w Y   |                     dt          |j                             d S )Nrc   r   Tr+   r,   )	r   r   r.   assertRaises
ValueErrorr   assertInstr	exception)r$   r%   es      r'   r/   z)TestMapboxLabelsPlot.test_labels_inverted^   s    rV$E$E$EFFKK L 
 
 
 z** 	)a  (((	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	) 	mS%5%566666s   A22A69A6c                     t          d          t          g d                              d          z  }|                     |          }|                     |d         d         d         d         d           d S )	Nrc   r1      r2   r   r   r4   r3   r   r   r.   r   r    r#   s      r'   r5   z%TestMapboxLabelsPlot.test_labels_sizeg   su    rV$E$E$EFFKKQSKTTT$$V,,vq)*5f=rBBBBBr)   c                 D   d}t          d          t          | j        d         | j        d         df| j        d         | j        d         df| j        d         | j        d         dfg                              |	          z  }|                     |          }t          j        t          j        | j                  |z   | j                  \  }}| 	                    |d
         d         d         |           | 	                    |d
         d         d         |           d S )Ni'  rc   r   rd   r   re   r   rf   r8   r   rg   rh   
r   r   rS   rT   r.   r   rZ   r!   r"   r    r$   offsetr%   r&   r_   r`   s         r'   r<   z(TestMapboxLabelsPlot.test_labels_xoffsetl   s	   rVWQZS)WQZS)WQZS)%
   44	  $$V,,6rx7H7H67QSWSZ[[
dvq)%0$777vq)%0$77777r)   c                 D   d}t          d          t          | j        d         | j        d         df| j        d         | j        d         df| j        d         | j        d         dfg                              |	          z  }|                     |          }t          j        | j        t          j        | j                  |z             \  }}| 	                    |d
         d         d         |           | 	                    |d
         d         d         |           d S )Ni N  rc   r   rd   r   re   r   rf   r?   r   rg   rh   rw   rx   s         r'   rA   z(TestMapboxLabelsPlot.test_labels_yoffsety   s   rVWQZS)WQZS)WQZS)%
   44	 
 $$V,,6tw@Q@QTZ@Z[[
dvq)%0$777vq)%0$77777r)   c                     t          d          t          g d                              d          z  }|                     |          }|                     |d         d         d         d           d S )Nrc   r   FrC   r   r   rD   ru   rE   s      r'   rG   z!TestMapboxLabelsPlot.test_visible   sp    ))f%F%F%FGGLLUZL[[[$$W--vq))4e<<<<<r)   c                     t          d t          d          D                                                       }t          |d         j        d         t
                    sJ d S )Nc           	      J    i | ] }|t          d d |z   dfdd|z   dfg          !S )r   zLabel 1r   zLabel 2)r   ).0is     r'   
<dictcomp>zETestMapboxLabelsPlot.test_labels_text_color_cycle.<locals>.<dictcomp>   sW     " " "  AE9%AE9%   " " "r)   r   r   color)r   r   overlay
isinstancer.   r   )r$   hms     r'   test_labels_text_color_cyclez1TestMapboxLabelsPlot.test_labels_text_color_cycle   sl    " " a" " "
 

 ')) 	 "Q%*W-u5555555r)   )rH   rI   rJ   rR   r(   r/   r5   r<   rA   rG   r   __classcell__)ra   s   @r'   rM   rM   9   s        S S S S S 
 
 
&7 7 7C C C
8 8 8
8 
8 
8= = =
6 6 6 6 6 6 6r)   rM   )numpyr!   holoviews.core.optionsr   holoviews.core.spacesr   holoviews.elementr   r   	test_plotr   r
   rM   rK   r)   r'   <module>r      s        ( ( ( ( ( ( ) ) ) ) ) ) + + + + + + + + % % % % % %,= ,= ,= ,= ,=^ ,= ,= ,=^X6 X6 X6 X6 X6> X6 X6 X6 X6 X6r)   