
    e                     ^    d dl Zd dlmZ d dlmZ d dlmZ ddlm	Z	m
Z
  G d de	          ZdS )	    N)
DynamicMap)Spread)Buffer   )TestBokehPlotbokeh_rendererc                   D    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
S )TestSpreadPlotc                    t          t          j        g           t          j        g           t          j        g           d          }t          t          |g          }t          j        |          }|                    g dg dg dd           |j        d         }| 	                    |j
        d         t          j        g d                     | 	                    |j
        d	         t          j        g d
                     d S )N)yyerrorx)streams)r      r      )      ?g?皙?r   )r   r   r      cdsr   )              ?       @      @r   r   r   r   r   )r   g??      @g      @g?g@g      ?)r   nparrayr   r   r   get_plotsendhandlesassertEqualdata)selfbufferdmapplotr   s        Nlib/python3.11/site-packages/holoviews/tests/plotting/bokeh/test_spreadplot.pytest_spread_stream_dataz&TestSpreadPlot.test_spread_stream_data   s    bhrllbhrllRTVVWW&6(333&t,,,,,2B2B2BSSTTTl5!#1Q1Q1Q(R(RSSS#1Y1Y1Y(Z(Z[[[[[    c                    t          ddddt          j        t          j        t          j        fdddgg d	          }t          j        |          }|j        d
         }|                     |j        d         t          j        ddddddt          j        ddddddg                     |                     |j        d         t          j        ddddddt          j        ddddddg                     d S )N)r   r   r   r   )r   r   r   r   )r   r   r   r   r   )r   r   r      )r+   r   r      )r,   r   r      )r   negpos)vdimsr   r   r   r   r   g      @g      @g      @r   r   g      @)	r   r   nanr   r   r    r!   r"   r   r#   spreadr&   r   s       r'   test_spread_with_nansz$TestSpreadPlot.test_spread_with_nans   s   |\ArvrvWYW]C^%|\CJ]J]J]_ _ _&v..l5!#"b"b"b"&24b"b"b2J )K )K 	L 	L 	L#"b"b"b"&24b"b"b2J )K )K 	L 	L 	L 	L 	Lr)   c                     t          g           }t          j        |          }|j        d         }|                     |j        d         g            |                     |j        d         g            d S )Nr   r   r   )r   r   r   r    r!   r"   r2   s       r'   test_spread_emptyz TestSpreadPlot.test_spread_empty   sg    &v..l5!#+++#+++++r)   c                    t          g d                              d          }t          j        |          }|j        d         |j        d         }}|                     |j        d           |                     |j        d           |                     |j        d           |                     |j        d	           d S )
N)r   r   r   )r   r   r   )r   r   r   r   paddingx_rangey_range皙?皙	@瘙?ffffff@r   optsr   r   r    r!   startendr#   r3   r&   r;   r<   s        r'   test_spread_padding_squarez)TestSpreadPlot.test_spread_padding_square&   s    ???@@EEcERR&v..<	2DL4K,,,c***(;<<<c*****r)   c                    t          g d          j                            d                              d          }t	          j        |          }|j        d         |j        d         }}|                     |j        d           |                     |j	        d	           |                     |j        d
           |                     |j	        d           d S )Nr8   )r   r   r   r   r9   r;   r<   r=   r>   r   r   )
r   redimrangerB   r   r   r    r!   rC   rD   rE   s        r'   test_spread_padding_hard_rangez-TestSpreadPlot.test_spread_padding_hard_range/   s    ???@@FLLvLVV[[dg[hh&v..<	2DL4K,,,c******a(((((r)   c                    t          g d          j                            d                              d          }t	          j        |          }|j        d         |j        d         }}|                     |j        d           |                     |j	        d	           |                     |j        d
           |                     |j	        d           d S )Nr8   )r   r   rH   r   r9   r;   r<   r=   r>   r   r   )
r   rI   
soft_rangerB   r   r   r    r!   rC   rD   rE   s        r'   test_spread_padding_soft_rangez-TestSpreadPlot.test_spread_padding_soft_range8   s    ???@@FQQT\Q]]bbknboo&v..<	2DL4K,,,c******c*****r)   c                    t          g d                              dd          }t          j        |          }|j        d         |j        d         }}|                     |j        d           |                     |j        d           |                     |j        d	           |                     |j        d
           d S )Nr8   r   iX  )r:   widthr;   r<   r   g@r?   r@   rA   rE   s        r'   test_spread_padding_nonsquarez,TestSpreadPlot.test_spread_padding_nonsquareA   s    ???@@EEcY\E]]&v..<	2DL4K,,,c***(;<<<c*****r)   c                    t          g d                              dd          }t          j        |          }|j        d         |j        d         }}|                     |j        d           |                     |j        d           |                     |j        d	           |                     |j        d
           d S )Nr8   r   T)r:   logxr;   r<   g9r?gu
@r?   r@   rA   rE   s        r'   test_spread_padding_logxz'TestSpreadPlot.test_spread_padding_logxJ   s    >>>??DDSW[D\\&v..<	2DL4K(;<<<&8999(;<<<c*****r)   c                    t          g d                              dd          }t          j        |          }|j        d         |j        d         }}|                     |j        d           |                     |j        d           |                     |j        d	           |                     |j        d
           d S )Nr8   r   T)r:   logyr;   r<   r=   r>   g	=kW?g+@rA   rE   s        r'   test_spread_padding_logyz'TestSpreadPlot.test_spread_padding_logyS   s    ???@@EEcX\E]]&v..<	2DL4K,,,c***(;<<<&899999r)   N)__name__
__module____qualname__r(   r4   r6   rF   rK   rN   rQ   rT   rW    r)   r'   r
   r
   
   s        \ \ \L L L, , ,+ + +) ) )+ + ++ + ++ + +: : : : :r)   r
   )numpyr   holoviews.core.spacesr   holoviews.elementr   holoviews.streamsr   	test_plotr   r   r
   r[   r)   r'   <module>ra      s        , , , , , , $ $ $ $ $ $ $ $ $ $ $ $ 4 4 4 4 4 4 4 4P: P: P: P: P:] P: P: P: P: P:r)   