U
    SZfJ                     @   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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d fdd	Z  ZS )Xzscatter3d.projectionzscatter3d.projection.xopacityscaleshowc                 C   s   | d S )z
        Sets the projection color.

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

        Returns
        -------
        int|float
        r    selfr   r   M/tmp/pip-unpacked-wheel-5ksk5baj/plotly/graph_objs/scatter3d/projection/_x.pyr      s    z	X.opacityc                 C   s   || d< d S )Nr   r   r	   valr   r   r
   r      s    c                 C   s   | d S )a  
        Sets the scale factor determining the size of the projection
        marker points.

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

        Returns
        -------
        int|float
        r   r   r   r   r   r
   r   #   s    zX.scalec                 C   s   || d< d S )Nr   r   r   r   r   r
   r   2   s    c                 C   s   | d S )z
        Sets whether or not projections are shown along the x axis.

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

        Returns
        -------
        bool
        r   r   r   r   r   r
   r   8   s    zX.showc                 C   s   || d< d S )Nr   r   r   r   r   r
   r   F   s    c                 C   s   dS )Na          opacity
            Sets the projection color.
        scale
            Sets the scale factor determining the size of the
            projection marker points.
        show
            Sets whether or not projections are shown along the x
            axis.
        r   r   r   r   r
   _prop_descriptionsL   s    zX._prop_descriptionsNc                    s(  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< | jf t|f| d| _dS )a.  
        Construct a new X object

        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of
            :class:`plotly.graph_objs.scatter3d.projection.X`
        opacity
            Sets the projection color.
        scale
            Sets the scale factor determining the size of the
            projection marker points.
        show
            Sets whether or not projections are shown along the x
            axis.

        Returns
        -------
        X
        x_parentNzThe first argument to the plotly.graph_objs.scatter3d.projection.X
constructor must be a dict or
an instance of :class:`plotly.graph_objs.scatter3d.projection.X`Zskip_invalidF	_validateTr   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   kwargsZ_vr   r   r
   r   Y   s:    


	
z
X.__init__)NNNN)__name__
__module____qualname__Z_parent_path_strZ	_path_strZ_valid_propspropertyr   setterr   r   r   r   __classcell__r   r   r   r
   r      s$   







r   )Zplotly.basedatatypesr   Z_BaseTraceHierarchyTyper   r   r   r   r   r   r
   <module>   s   