
    -PhJ<                     6    d dl mZ d dlZ G d de          ZdS )    )BaseLayoutHierarchyTypeNc                       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ej        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ej        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 )Titlelayoutzlayout.title>   xypadfonttextxrefyrefxanchoryanchorsubtitle
automarginc                     | d         S )uc  
        Determines whether the title can automatically push the figure
        margins. If `yref='paper'` then the margin will expand to
        ensure that the title doesn’t overlap with the edges of the
        container. If `yref='container'` then the margins will ensure
        that the title doesn’t overlap with the plot area, tick labels,
        and axis titles. If `automargin=true` and the margins need to
        be expanded, then y will be set to a default 1 and yanchor will
        be set to an appropriate default to ensure that minimal margin
        space is needed. Note that when `yref='paper'`, only 1 or 0 are
        allowed y values. Invalid values will be reset to the default
        1.

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

        Returns
        -------
        bool
        r    selfs    _/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/plotly/graph_objs/layout/_title.pyr   zTitle.automargin   s    , L!!    c                     || d<   d S )Nr   r   r   vals     r   r   zTitle.automargin2   s     \r   c                     | d         S )aw  
        Sets the title font.

        The 'font' property is an instance of Font
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.layout.title.Font`
          - A dict of string/value properties that will be passed
            to the Font constructor

        Returns
        -------
        plotly.graph_objs.layout.title.Font
        r
   r   r   s    r   r
   z
Title.font6        F|r   c                     || d<   d S )Nr
   r   r   s     r   r
   z
Title.fontG       Vr   c                     | d         S )a  
        Sets the padding of the title. Each padding value only applies
        when the corresponding `xanchor`/`yanchor` value is set
        accordingly. E.g. for left padding to take effect, `xanchor`
        must be set to "left". The same rule applies if
        `xanchor`/`yanchor` is determined automatically. Padding is
        muted if the respective anchor value is "middle*/*center".

        The 'pad' property is an instance of Pad
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.layout.title.Pad`
          - A dict of string/value properties that will be passed
            to the Pad constructor

        Returns
        -------
        plotly.graph_objs.layout.title.Pad
        r	   r   r   s    r   r	   z	Title.padK   s    ( E{r   c                     || d<   d S )Nr	   r   r   s     r   r	   z	Title.pada   s    Ur   c                     | d         S )am  
        The 'subtitle' property is an instance of Subtitle
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.layout.title.Subtitle`
          - A dict of string/value properties that will be passed
            to the Subtitle constructor

        Returns
        -------
        plotly.graph_objs.layout.title.Subtitle
        r   r   r   s    r   r   zTitle.subtitlee   s     Jr   c                     || d<   d S )Nr   r   r   s     r   r   zTitle.subtitlet   s    Zr   c                     | d         S )z
        Sets the plot's title.

        The 'text' property is a string and must be specified as:
          - A string
          - A number that will be converted to a string

        Returns
        -------
        str
        r   r   r   s    r   r   z
Title.textx   s     F|r   c                     || d<   d S )Nr   r   r   s     r   r   z
Title.text   r   r   c                     | d         S )a  
        Sets the x position with respect to `xref` in normalized
        coordinates from 0 (left) to 1 (right).

        The 'x' property is a number and may be specified as:
          - An int or float in the interval [0, 1]

        Returns
        -------
        int|float
        r   r   r   s    r   r   zTitle.x   s     Cyr   c                     || d<   d S )Nr   r   r   s     r   r   zTitle.x       S			r   c                     | d         S )aP  
        Sets the title's horizontal alignment with respect to its x
        position. "left" means that the title starts at x, "right"
        means that the title ends at x and "center" means that the
        title's center is at x. "auto" divides `xref` by three and
        calculates the `xanchor` value automatically based on the value
        of `x`.

        The 'xanchor' property is an enumeration that may be specified as:
          - One of the following enumeration values:
                ['auto', 'left', 'center', 'right']

        Returns
        -------
        Any
        r   r   r   s    r   r   zTitle.xanchor       $ Ir   c                     || d<   d S )Nr   r   r   s     r   r   zTitle.xanchor       Yr   c                     | d         S )a~  
        Sets the container `x` refers to. "container" spans the entire
        `width` of the plot. "paper" refers to the width of the
        plotting area only.

        The 'xref' property is an enumeration that may be specified as:
          - One of the following enumeration values:
                ['container', 'paper']

        Returns
        -------
        Any
        r   r   r   s    r   r   z
Title.xref   r   r   c                     || d<   d S )Nr   r   r   s     r   r   z
Title.xref   r   r   c                     | d         S )a  
        Sets the y position with respect to `yref` in normalized
        coordinates from 0 (bottom) to 1 (top). "auto" places the
        baseline of the title onto the vertical center of the top
        margin.

        The 'y' property is a number and may be specified as:
          - An int or float in the interval [0, 1]

        Returns
        -------
        int|float
        r   r   r   s    r   r   zTitle.y   s     Cyr   c                     || d<   d S )Nr   r   r   s     r   r   zTitle.y   r'   r   c                     | d         S )a_  
        Sets the title's vertical alignment with respect to its y
        position. "top" means that the title's cap line is at y,
        "bottom" means that the title's baseline is at y and "middle"
        means that the title's midline is at y. "auto" divides `yref`
        by three and calculates the `yanchor` value automatically based
        on the value of `y`.

        The 'yanchor' property is an enumeration that may be specified as:
          - One of the following enumeration values:
                ['auto', 'top', 'middle', 'bottom']

        Returns
        -------
        Any
        r   r   r   s    r   r   zTitle.yanchor   r)   r   c                     || d<   d S )Nr   r   r   s     r   r   zTitle.yanchor   r+   r   c                     | d         S )a  
        Sets the container `y` refers to. "container" spans the entire
        `height` of the plot. "paper" refers to the height of the
        plotting area only.

        The 'yref' property is an enumeration that may be specified as:
          - One of the following enumeration values:
                ['container', 'paper']

        Returns
        -------
        Any
        r   r   r   s    r   r   z
Title.yref   r   r   c                     || d<   d S )Nr   r   r   s     r   r   z
Title.yref	  r   r   c                     dS )Nu          automargin
            Determines whether the title can automatically push the
            figure margins. If `yref='paper'` then the margin will
            expand to ensure that the title doesn’t overlap with
            the edges of the container. If `yref='container'` then
            the margins will ensure that the title doesn’t overlap
            with the plot area, tick labels, and axis titles. If
            `automargin=true` and the margins need to be expanded,
            then y will be set to a default 1 and yanchor will be
            set to an appropriate default to ensure that minimal
            margin space is needed. Note that when `yref='paper'`,
            only 1 or 0 are allowed y values. Invalid values will
            be reset to the default 1.
        font
            Sets the title font.
        pad
            Sets the padding of the title. Each padding value only
            applies when the corresponding `xanchor`/`yanchor`
            value is set accordingly. E.g. for left padding to take
            effect, `xanchor` must be set to "left". The same rule
            applies if `xanchor`/`yanchor` is determined
            automatically. Padding is muted if the respective
            anchor value is "middle*/*center".
        subtitle
            :class:`plotly.graph_objects.layout.title.Subtitle`
            instance or dict with compatible properties
        text
            Sets the plot's title.
        x
            Sets the x position with respect to `xref` in
            normalized coordinates from 0 (left) to 1 (right).
        xanchor
            Sets the title's horizontal alignment with respect to
            its x position. "left" means that the title starts at
            x, "right" means that the title ends at x and "center"
            means that the title's center is at x. "auto" divides
            `xref` by three and calculates the `xanchor` value
            automatically based on the value of `x`.
        xref
            Sets the container `x` refers to. "container" spans the
            entire `width` of the plot. "paper" refers to the width
            of the plotting area only.
        y
            Sets the y position with respect to `yref` in
            normalized coordinates from 0 (bottom) to 1 (top).
            "auto" places the baseline of the title onto the
            vertical center of the top margin.
        yanchor
            Sets the title's vertical alignment with respect to its
            y position. "top" means that the title's cap line is at
            y, "bottom" means that the title's baseline is at y and
            "middle" means that the title's midline is at y. "auto"
            divides `yref` by three and calculates the `yanchor`
            value automatically based on the value of `y`.
        yref
            Sets the container `y` refers to. "container" spans the
            entire `height` of the plot. "paper" refers to the
            height of the plotting area only.
        r   r   s    r   _prop_descriptionszTitle._prop_descriptions  s    ; ;r   Nc           	         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||           |                     d||           |                     d||           |                     d||           |                     d||           |                     d||	           |                     d||
           |                     d||           |                     d||            | j        di t          |fi | d| _        dS )u  
        Construct a new Title object

        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of :class:`plotly.graph_objs.layout.Title`
        automargin
            Determines whether the title can automatically push the
            figure margins. If `yref='paper'` then the margin will
            expand to ensure that the title doesn’t overlap with
            the edges of the container. If `yref='container'` then
            the margins will ensure that the title doesn’t overlap
            with the plot area, tick labels, and axis titles. If
            `automargin=true` and the margins need to be expanded,
            then y will be set to a default 1 and yanchor will be
            set to an appropriate default to ensure that minimal
            margin space is needed. Note that when `yref='paper'`,
            only 1 or 0 are allowed y values. Invalid values will
            be reset to the default 1.
        font
            Sets the title font.
        pad
            Sets the padding of the title. Each padding value only
            applies when the corresponding `xanchor`/`yanchor`
            value is set accordingly. E.g. for left padding to take
            effect, `xanchor` must be set to "left". The same rule
            applies if `xanchor`/`yanchor` is determined
            automatically. Padding is muted if the respective
            anchor value is "middle*/*center".
        subtitle
            :class:`plotly.graph_objects.layout.title.Subtitle`
            instance or dict with compatible properties
        text
            Sets the plot's title.
        x
            Sets the x position with respect to `xref` in
            normalized coordinates from 0 (left) to 1 (right).
        xanchor
            Sets the title's horizontal alignment with respect to
            its x position. "left" means that the title starts at
            x, "right" means that the title ends at x and "center"
            means that the title's center is at x. "auto" divides
            `xref` by three and calculates the `xanchor` value
            automatically based on the value of `x`.
        xref
            Sets the container `x` refers to. "container" spans the
            entire `width` of the plot. "paper" refers to the width
            of the plotting area only.
        y
            Sets the y position with respect to `yref` in
            normalized coordinates from 0 (bottom) to 1 (top).
            "auto" places the baseline of the title onto the
            vertical center of the top margin.
        yanchor
            Sets the title's vertical alignment with respect to its
            y position. "top" means that the title's cap line is at
            y, "bottom" means that the title's baseline is at y and
            "middle" means that the title's midline is at y. "auto"
            divides `yref` by three and calculates the `yanchor`
            value automatically based on the value of `y`.
        yref
            Sets the container `y` refers to. "container" spans the
            entire `height` of the plot. "paper" refers to the
            height of the plotting area only.

        Returns
        -------
        Title
        title_parentNzThe first argument to the plotly.graph_objs.layout.Title
constructor must be a dict or
an instance of :class:`plotly.graph_objs.layout.Title`skip_invalidF	_validateTr   r
   r	   r   r   r   r   r   r   r   r   r   )super__init__r8   
isinstance	__class__to_plotly_jsondict_copycopy
ValueErrorpop_skip_invalidr:   _set_property_process_kwargs)r   argr   r
   r	   r   r   r   r   r   r   r   r   kwargsr>   s                 r   r<   zTitle.__init__L  s   n 	!!!!),DLF;CCT^,, 
	$$&&CCT"" 	*S//CC:   $ZZ>>K66<j99963---5#s+++:sH55563---3Q'''9c733363---3Q'''9c733363---33tC22622333"r   )NNNNNNNNNNNN)__name__
__module____qualname___parent_path_str	_path_str_valid_propspropertyr   setterr
   r	   r   r   r   r   r   r   r   r   r5   r<   __classcell__)r>   s   @r   r   r      s       I  L " " X". ! ! !   X  
[  [   X* 	Z  Z     X  _  _   X 
[  [   X X  X   X& ^  ^   X  
[  [   X  X  X   X& ^  ^   X  
[  [ < < X<@ 

y# y# y# y# y# y# y# y# y# y#r   r   )plotly.basedatatypesr   _BaseLayoutHierarchyTyperB   rA   r   r   r   r   <module>rU      se    U T T T T T    }# }# }# }# }#$ }# }# }# }# }#r   