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 )Ú
ProjectionZ	scatter3dzscatter3d.projectionÚxÚyÚzc             C   s   | d S )aá  
        The 'x' property is an instance of X
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.scatter3d.projection.X`
          - A dict of string/value properties that will be passed
            to the X constructor
    
            Supported dict properties:
                
                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
        -------
        plotly.graph_objs.scatter3d.projection.X
        r   © )Úselfr   r   úK/tmp/pip-install-l29rncou/plotly/plotly/graph_objs/scatter3d/_projection.pyr      s    zProjection.xc             C   s   || d< d S )Nr   r   )r   Úvalr   r   r	   r   )   s    c             C   s   | d S )aá  
        The 'y' property is an instance of Y
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.scatter3d.projection.Y`
          - A dict of string/value properties that will be passed
            to the Y constructor
    
            Supported dict properties:
                
                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 y axis.

        Returns
        -------
        plotly.graph_objs.scatter3d.projection.Y
        r   r   )r   r   r   r	   r   /   s    zProjection.yc             C   s   || d< d S )Nr   r   )r   r
   r   r   r	   r   I   s    c             C   s   | d S )aá  
        The 'z' property is an instance of Z
        that may be specified as:
          - An instance of :class:`plotly.graph_objs.scatter3d.projection.Z`
          - A dict of string/value properties that will be passed
            to the Z constructor
    
            Supported dict properties:
                
                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 z axis.

        Returns
        -------
        plotly.graph_objs.scatter3d.projection.Z
        r   r   )r   r   r   r	   r   O   s    zProjection.zc             C   s   || d< d S )Nr   r   )r   r
   r   r   r	   r   i   s    c             C   s   dS )Na‘          x
            :class:`plotly.graph_objects.scatter3d.projection.X`
            instance or dict with compatible properties
        y
            :class:`plotly.graph_objects.scatter3d.projection.Y`
            instance or dict with compatible properties
        z
            :class:`plotly.graph_objects.scatter3d.projection.Z`
            instance or dict with compatible properties
        r   )r   r   r   r	   Ú_prop_descriptionso   s    zProjection._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 Projection object
        
        Parameters
        ----------
        arg
            dict of properties compatible with this constructor or
            an instance of
            :class:`plotly.graph_objs.scatter3d.Projection`
        x
            :class:`plotly.graph_objects.scatter3d.projection.X`
            instance or dict with compatible properties
        y
            :class:`plotly.graph_objects.scatter3d.projection.Y`
            instance or dict with compatible properties
        z
            :class:`plotly.graph_objects.scatter3d.projection.Z`
            instance or dict with compatible properties

        Returns
        -------
        Projection
        Z
projectionÚ_parentNzŸThe first argument to the plotly.graph_objs.scatter3d.Projection 
constructor must be a dict or 
an instance of :class:`plotly.graph_objs.scatter3d.Projection`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   }   s8    



zProjection.__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   