from plotly.basedatatypes import BaseTraceHierarchyType as _BaseTraceHierarchyType import copy as _copy class Y(_BaseTraceHierarchyType): # class properties # -------------------- _parent_path_str = "scatter3d.projection" _path_str = "scatter3d.projection.y" _valid_props = {"opacity", "scale", "show"} # opacity # ------- @property def opacity(self): """ 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 """ return self["opacity"] @opacity.setter def opacity(self, val): self["opacity"] = val # scale # ----- @property def scale(self): """ 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 """ return self["scale"] @scale.setter def scale(self, val): self["scale"] = val # show # ---- @property def show(self): """ Sets whether or not projections are shown along the y axis. The 'show' property must be specified as a bool (either True, or False) Returns ------- bool """ return self["show"] @show.setter def show(self, val): self["show"] = val # Self properties description # --------------------------- @property def _prop_descriptions(self): return """\ 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. """ def __init__(self, arg=None, opacity=None, scale=None, show=None, **kwargs): """ Construct a new Y object Parameters ---------- arg dict of properties compatible with this constructor or an instance of :class:`plotly.graph_objs.scatter3d.projection.Y` 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 ------- Y """ super(Y, self).__init__("y") if "_parent" in kwargs: self._parent = kwargs["_parent"] return # Validate arg # ------------ if arg is None: arg = {} elif isinstance(arg, self.__class__): arg = arg.to_plotly_json() elif isinstance(arg, dict): arg = _copy.copy(arg) else: raise ValueError( """\ The first argument to the plotly.graph_objs.scatter3d.projection.Y constructor must be a dict or an instance of :class:`plotly.graph_objs.scatter3d.projection.Y`""" ) # Handle skip_invalid # ------------------- self._skip_invalid = kwargs.pop("skip_invalid", False) self._validate = kwargs.pop("_validate", True) # Populate data dict with properties # ---------------------------------- _v = arg.pop("opacity", None) _v = opacity if opacity is not None else _v if _v is not None: self["opacity"] = _v _v = arg.pop("scale", None) _v = scale if scale is not None else _v if _v is not None: self["scale"] = _v _v = arg.pop("show", None) _v = show if show is not None else _v if _v is not None: self["show"] = _v # Process unknown kwargs # ---------------------- self._process_kwargs(**dict(arg, **kwargs)) # Reset skip_invalid # ------------------ self._skip_invalid = False