U
    ccY!                     @   s(   d dl mZ d dlZG dd deZdS )    )BaseTraceHierarchyTypeNc                       s   e Zd ZdZdZddddhZedd Zejd	d Zed
d Z	e	jdd Z	edd Z
e
jdd Z
edd Zejdd Zedd Zd fdd	Z  ZS )LineZcontourzcontour.linecolordash	smoothingwidthc                 C   s   | d S )aU
  
        Sets the color of the contour level. Has no effect if
        `contours.coloring` is set to "lines".

        The 'color' property is a color and may be specified as:
          - A hex string (e.g. '#ff0000')
          - An rgb/rgba string (e.g. 'rgb(255,0,0)')
          - An hsl/hsla string (e.g. 'hsl(0,100%,50%)')
          - An hsv/hsva string (e.g. 'hsv(0,100%,100%)')
          - A named CSS color:
                aliceblue, antiquewhite, aqua, aquamarine, azure,
                beige, bisque, black, blanchedalmond, blue,
                blueviolet, brown, burlywood, cadetblue,
                chartreuse, chocolate, coral, cornflowerblue,
                cornsilk, crimson, cyan, darkblue, darkcyan,
                darkgoldenrod, darkgray, darkgrey, darkgreen,
                darkkhaki, darkmagenta, darkolivegreen, darkorange,
                darkorchid, darkred, darksalmon, darkseagreen,
                darkslateblue, darkslategray, darkslategrey,
                darkturquoise, darkviolet, deeppink, deepskyblue,
                dimgray, dimgrey, dodgerblue, firebrick,
                floralwhite, forestgreen, fuchsia, gainsboro,
                ghostwhite, gold, goldenrod, gray, grey, green,
                greenyellow, honeydew, hotpink, indianred, indigo,
                ivory, khaki, lavender, lavenderblush, lawngreen,
                lemonchiffon, lightblue, lightcoral, lightcyan,
                lightgoldenrodyellow, lightgray, lightgrey,
                lightgreen, lightpink, lightsalmon, lightseagreen,
                lightskyblue, lightslategray, lightslategrey,
                lightsteelblue, lightyellow, lime, limegreen,
                linen, magenta, maroon, mediumaquamarine,
                mediumblue, mediumorchid, mediumpurple,
                mediumseagreen, mediumslateblue, mediumspringgreen,
                mediumturquoise, mediumvioletred, midnightblue,
                mintcream, mistyrose, moccasin, navajowhite, navy,
                oldlace, olive, olivedrab, orange, orangered,
                orchid, palegoldenrod, palegreen, paleturquoise,
                palevioletred, papayawhip, peachpuff, peru, pink,
                plum, powderblue, purple, red, rosybrown,
                royalblue, rebeccapurple, saddlebrown, salmon,
                sandybrown, seagreen, seashell, sienna, silver,
                skyblue, slateblue, slategray, slategrey, snow,
                springgreen, steelblue, tan, teal, thistle, tomato,
                turquoise, violet, wheat, white, whitesmoke,
                yellow, yellowgreen

        Returns
        -------
        str
        r    selfr   r   Y/var/www/html/project/venv/lib/python3.8/site-packages/plotly/graph_objs/contour/_line.pyr      s    4z
Line.colorc                 C   s   || d< d S )Nr   r   r
   valr   r   r   r   E   s    c                 C   s   | d S )ae  
        Sets the dash style of lines. Set to a dash type string
        ("solid", "dot", "dash", "longdash", "dashdot", or
        "longdashdot") or a dash length list in px (eg
        "5px,10px,2px,2px").

        The 'dash' property is an enumeration that may be specified as:
          - One of the following dash styles:
                ['solid', 'dot', 'dash', 'longdash', 'dashdot', 'longdashdot']
          - A string containing a dash length list in pixels or percentages
                (e.g. '5px 10px 2px 2px', '5, 10, 2, 2', '10% 20% 40%', etc.)

        Returns
        -------
        str
        r   r   r	   r   r   r   r   K   s    z	Line.dashc                 C   s   || d< d S )Nr   r   r   r   r   r   r   _   s    c                 C   s   | d S )a!  
        Sets the amount of smoothing for the contour lines, where 0
        corresponds to no smoothing.

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

        Returns
        -------
        int|float
        r   r   r	   r   r   r   r   e   s    zLine.smoothingc                 C   s   || d< d S )Nr   r   r   r   r   r   r   t   s    c                 C   s   | d S )aX  
        Sets the contour line width in (in px) Defaults to 0.5 when
        `contours.type` is "levels". Defaults to 2 when `contour.type`
        is "constraint".

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

        Returns
        -------
        int|float
        r   r   r	   r   r   r   r   z   s    z
Line.widthc                 C   s   || d< d S )Nr   r   r   r   r   r   r      s    c                 C   s   dS )Na          color
            Sets the color of the contour level. Has no effect if
            `contours.coloring` is set to "lines".
        dash
            Sets the dash style of lines. Set to a dash type string
            ("solid", "dot", "dash", "longdash", "dashdot", or
            "longdashdot") or a dash length list in px (eg
            "5px,10px,2px,2px").
        smoothing
            Sets the amount of smoothing for the contour lines,
            where 0 corresponds to no smoothing.
        width
            Sets the contour line width in (in px) Defaults to 0.5
            when `contours.type` is "levels". Defaults to 2 when
            `contour.type` is "constraint".
        r   r	   r   r   r   _prop_descriptions   s    zLine._prop_descriptionsNc                    sX  t t| d d|kr&|d | _dS |dkr4i }n4t|| jrJ| }nt|tr`t	|}nt
d|dd| _|dd| _|d	d}|dk	r|n|}|dk	r|| d	< |d
d}|dk	r|n|}|dk	r|| d
< |dd}|dk	r|n|}|dk	r
|| d< |dd}|dk	r$|n|}|dk	r:|| d< | jf t|f| d| _dS )a  
        Construct a new Line object

        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of :class:`plotly.graph_objs.contour.Line`
        color
            Sets the color of the contour level. Has no effect if
            `contours.coloring` is set to "lines".
        dash
            Sets the dash style of lines. Set to a dash type string
            ("solid", "dot", "dash", "longdash", "dashdot", or
            "longdashdot") or a dash length list in px (eg
            "5px,10px,2px,2px").
        smoothing
            Sets the amount of smoothing for the contour lines,
            where 0 corresponds to no smoothing.
        width
            Sets the contour line width in (in px) Defaults to 0.5
            when `contours.type` is "levels". Defaults to 2 when
            `contour.type` is "constraint".

        Returns
        -------
        Line
        line_parentNzThe first argument to the plotly.graph_objs.contour.Line
constructor must be a dict or
an instance of :class:`plotly.graph_objs.contour.Line`Zskip_invalidF	_validateTr   r   r   r   )superr   __init__r   
isinstance	__class__Zto_plotly_jsondict_copycopy
ValueErrorpopZ_skip_invalidr   Z_process_kwargs)r
   argr   r   r   r   kwargs_vr   r   r   r      sB    


	

zLine.__init__)NNNNN)__name__
__module____qualname__Z_parent_path_strZ	_path_strZ_valid_propspropertyr   setterr   r   r   r   r   __classcell__r   r   r   r   r      s6   
5







         r   )Zplotly.basedatatypesr   Z_BaseTraceHierarchyTyper   r   r   r   r   r   r   <module>   s   