
    e                     @   d Z ddlZddlZddlZddlZddl	m
Z
 ddlmZmZ  ej        d          Ze
j                                                            ddd	          Ze
j                                                            ddd
	          Ze
j                                                            ddd	          Z ej         ej         ej        ee          e          e
j        d          Zej                            d          e_         ej        e          ZddgZg dZ edd           edd          ddZ ej        d2i e                    ej         eed          Z!e!"                    d e!#                                D                       Z$e!e$z                       ej         dddd ej%         ed
                    dz  dgddd	  	         ej&        d d!"                    Z'd# Z(d$ Z)d% Z*e+                    d          \  Z,Z-ej.        /                     e0e,           e0e-           e0e,          d&          Z1e1j2        3                    e)d'           ej.        4                    d(d)d*+          Z5e56                    e*           e57                    e(d,d-.          Z8e9                    e'          Z:e:;                    d/            ej<        e:j=         ej>        e1e5          d01          ?                    d           dS )3zt
Gapminder demo demonstrating how to combine to extend a HoloViews plot
with custom bokeh widgets to deploy an app.
    N)	gapminder)dimoptsbokehCountryYear	Fertility)id_varsvar_name
value_name
PopulationLife Expectancy)onint)r   r   Groupz$Children per woman (total fertility))r   
   )labelrangez Life expectancy at birth (years))   d   )
populationr   )r	   r   r   c                 t    i | ]5}|t          j        d dt          t          |                    d          6S )g333333?      )fontsize)hvTextstrr   ).0yrs     Olib/python3.11/site-packages/holoviews/examples/gallery/apps/bokeh/gapminder.py
<dictcomp>r"   %   sI     : : :! rwsBCGGrJJJ : : :    g333333?r   Set1blackg{Gzt?hoverzGapminder DemoT)	alphacolorcmap
line_colorsizetoolstitle
responsive	show_grid52pt	lightgray)text_font_size
text_colorc                  z    t           j        dz   } | t          k    rt          t                    } | t           _        d S )N   )slidervalueendr   start)years    r!   animate_updater;   3   s-    <!Dczz5zzFLLLr#   c                 F    t                               | j        f           d S )N)hvplotupdatenewevents    r!   slider_updaterB   :   s    
MM59,r#   c                     t           j        dk    r'dt           _        t                                           d S dt           _        t                                           d S )N   ► Playu   ❚❚ Pause)buttonnamecallbackr9   stopr@   s    r!   animaterI   =   sD    {j  $ r#   )r9   r8   r7   rF   r7   rD   <   r8   )rF   widthalign   F)r9   )i  stretch_both)sizing_mode )@__doc__pandaspdnumpynp	holoviewsr   panelpnbokeh.sampledatar   r   r   renderer	fertilityreset_indexmeltr   life_expectancymergeregionsgapminder_dfr   astypeDatasetdskdimsvdimsdict
dimensionsredimtoPointsgapminder_dsclonekeystextsqrtr   hvgapminderr;   rB   rI   r   r9   r8   widgets	IntSliderr   r6   paramwatchButtonrE   on_clickadd_periodic_callbackrG   get_plotr=   r>   ColumnstateRowservablerP   r#   r!   <module>r~      s   
                 & & & & & &        2;w ++--229vbm2nn	!--//44YQWdp4qq
+7799>>y[an>  A  Arx)Z!@!@/RRT]Tejsttt %,,U33 RZ 
'(***$C7SSSt"DIVVV. 
 rx%%*%%((E5&II  : :%1%6%6%8%8: : : ; ;
 d"((DKcv'RWSS..//5i'7D      DIV<<<           XXf
s			CCJJCCHHCCJJU[		\	\   =' * * *			
"E		B	B    ''5'II 
		;	'	' g    
	
L
BF66   (r#   