B
    &[_`                 @   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-install-l29rncou/plotly/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	   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	   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 )a6  
        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   s8    



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   