
    -Ph                     6    d dl mZ d dlZ G d de          ZdS )    )BaseTraceHierarchyTypeNc                        e Zd ZdZdZh dZed             Zej        d             Zed             Z	e	j        d             Z	ed             Z
e
j        d	             Z
ed
             Z	 d fd	Z xZS )
Cumulative	histogramzhistogram.cumulative>   enabled	direction
currentbinc                     | d         S )au  
        Only applies if cumulative is enabled. Sets whether the current
        bin is included, excluded, or has half of its value included in
        the current cumulative value. "include" is the default for
        compatibility with various other tools, however it introduces a
        half-bin bias to the results. "exclude" makes the opposite
        half-bin bias, and "half" removes it.

        The 'currentbin' property is an enumeration that may be specified as:
          - One of the following enumeration values:
                ['include', 'exclude', 'half']

        Returns
        -------
        Any
        r	    selfs    g/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/plotly/graph_objs/histogram/_cumulative.pyr	   zCumulative.currentbin   s    $ L!!    c                     || d<   d S )Nr	   r   r   vals     r   r	   zCumulative.currentbin"   s     \r   c                     | d         S )a  
        Only applies if cumulative is enabled. If "increasing"
        (default) we sum all prior bins, so the result increases from
        left to right. If "decreasing" we sum later bins so the result
        decreases from left to right.

        The 'direction' property is an enumeration that may be specified as:
          - One of the following enumeration values:
                ['increasing', 'decreasing']

        Returns
        -------
        Any
        r   r   r   s    r   r   zCumulative.direction&   s      K  r   c                     || d<   d S )Nr   r   r   s     r   r   zCumulative.direction8   s    [r   c                     | d         S )ad  
        If true, display the cumulative distribution by summing the
        binned values. Use the `direction` and `centralbin` attributes
        to tune the accumulation method. Note: in this mode, the
        "density" `histnorm` settings behave the same as their
        equivalents without "density": "" and "density" both rise to
        the number of data points, and "probability" and *probability
        density* both rise to the number of sample points.

        The 'enabled' property must be specified as a bool
        (either True, or False)

        Returns
        -------
        bool
        r   r   r   s    r   r   zCumulative.enabled<   s    $ Ir   c                     || d<   d S )Nr   r   r   s     r   r   zCumulative.enabledP   s    Yr   c                     dS )Na          currentbin
            Only applies if cumulative is enabled. Sets whether the
            current bin is included, excluded, or has half of its
            value included in the current cumulative value.
            "include" is the default for compatibility with various
            other tools, however it introduces a half-bin bias to
            the results. "exclude" makes the opposite half-bin
            bias, and "half" removes it.
        direction
            Only applies if cumulative is enabled. If "increasing"
            (default) we sum all prior bins, so the result
            increases from left to right. If "decreasing" we sum
            later bins so the result decreases from left to right.
        enabled
            If true, display the cumulative distribution by summing
            the binned values. Use the `direction` and `centralbin`
            attributes to tune the accumulation method. Note: in
            this mode, the "density" `histnorm` settings behave the
            same as their equivalents without "density": "" and
            "density" both rise to the number of data points, and
            "probability" and *probability density* both rise to
            the number of sample points.
        r   r   s    r   _prop_descriptionszCumulative._prop_descriptionsT   s     r   Nc           	      t   t                                          d           d|v r|d         | _        dS |i }nct          || j                  r|                                }n9t          |t                    rt          j        |          }nt          d          |
                    dd          | _        |
                    dd          | _        |                     d	||           |                     d
||           |                     d||            | j        di t          |fi | d| _        dS )a  
        Construct a new Cumulative object

        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of
            :class:`plotly.graph_objs.histogram.Cumulative`
        currentbin
            Only applies if cumulative is enabled. Sets whether the
            current bin is included, excluded, or has half of its
            value included in the current cumulative value.
            "include" is the default for compatibility with various
            other tools, however it introduces a half-bin bias to
            the results. "exclude" makes the opposite half-bin
            bias, and "half" removes it.
        direction
            Only applies if cumulative is enabled. If "increasing"
            (default) we sum all prior bins, so the result
            increases from left to right. If "decreasing" we sum
            later bins so the result decreases from left to right.
        enabled
            If true, display the cumulative distribution by summing
            the binned values. Use the `direction` and `centralbin`
            attributes to tune the accumulation method. Note: in
            this mode, the "density" `histnorm` settings behave the
            same as their equivalents without "density": "" and
            "density" both rise to the number of data points, and
            "probability" and *probability density* both rise to
            the number of sample points.

        Returns
        -------
        Cumulative
        
cumulative_parentNzThe first argument to the plotly.graph_objs.histogram.Cumulative
constructor must be a dict or
an instance of :class:`plotly.graph_objs.histogram.Cumulative`skip_invalidF	_validateTr	   r   r   r   )super__init__r   
isinstance	__class__to_plotly_jsondict_copycopy
ValueErrorpop_skip_invalidr   _set_property_process_kwargs)r   argr	   r   r   kwargsr!   s         r   r   zCumulative.__init__o   sR   N 	&&&!),DLF;CCT^,, 
	$$&&CCT"" 	*S//CCB   $ZZ>>K66<j999;Y7779c733333tC22622333"r   )NNNN)__name__
__module____qualname___parent_path_str	_path_str_valid_propspropertyr	   setterr   r   r   r   __classcell__)r!   s   @r   r   r      s)       "&I999L" " X"& ! ! ! ! ! X!"         X& ^  ^   X6 BFA# A# A# A# A# A# A# A# A# A#r   r   )plotly.basedatatypesr   _BaseTraceHierarchyTyper%   r$   r   r   r   r   <module>r8      se    S R R R R R    h# h# h# h# h#( h# h# h# h# h#r   