def __init__(self, arg=None, autocolorscale=None, cauto=None, cmax=None, cmid=None, cmin=None, color=None, coloraxis=None, colorbar=None, colorscale=None, colorsrc=None, gradient=None, line=None, opacity=None, opacitysrc=None, reversescale=None, showscale=None, size=None, sizemin=None, sizemode=None, sizeref=None, sizesrc=None, symbol=None, symbolsrc=None, **kwargs):
    '\n        Construct a new Marker object\n        \n        Parameters\n        ----------\n        arg\n            dict of properties compatible with this constructor or\n            an instance of plotly.graph_objs.scattergeo.Marker\n        autocolorscale\n            Determines whether the colorscale is a default palette\n            (`autocolorscale: true`) or the palette determined by\n            `marker.colorscale`. Has an effect only if in\n            `marker.color`is set to a numerical array. In case\n            `colorscale` is unspecified or `autocolorscale` is\n            true, the default  palette will be chosen according to\n            whether numbers in the `color` array are all positive,\n            all negative or mixed.\n        cauto\n            Determines whether or not the color domain is computed\n            with respect to the input data (here in `marker.color`)\n            or the bounds set in `marker.cmin` and `marker.cmax`\n            Has an effect only if in `marker.color`is set to a\n            numerical array. Defaults to `false` when `marker.cmin`\n            and `marker.cmax` are set by the user.\n        cmax\n            Sets the upper bound of the color domain. Has an effect\n            only if in `marker.color`is set to a numerical array.\n            Value should have the same units as in `marker.color`\n            and if set, `marker.cmin` must be set as well.\n        cmid\n            Sets the mid-point of the color domain by scaling\n            `marker.cmin` and/or `marker.cmax` to be equidistant to\n            this point. Has an effect only if in `marker.color`is\n            set to a numerical array. Value should have the same\n            units as in `marker.color`. Has no effect when\n            `marker.cauto` is `false`.\n        cmin\n            Sets the lower bound of the color domain. Has an effect\n            only if in `marker.color`is set to a numerical array.\n            Value should have the same units as in `marker.color`\n            and if set, `marker.cmax` must be set as well.\n        color\n            Sets themarkercolor. It accepts either a specific color\n            or an array of numbers that are mapped to the\n            colorscale relative to the max and min values of the\n            array or relative to `marker.cmin` and `marker.cmax` if\n            set.\n        coloraxis\n            Sets a reference to a shared color axis. References to\n            these shared color axes are "coloraxis", "coloraxis2",\n            "coloraxis3", etc. Settings for these shared color axes\n            are set in the layout, under `layout.coloraxis`,\n            `layout.coloraxis2`, etc. Note that multiple color\n            scales can be linked to the same color axis.\n        colorbar\n            plotly.graph_objs.scattergeo.marker.ColorBar instance\n            or dict with compatible properties\n        colorscale\n            Sets the colorscale. Has an effect only if in\n            `marker.color`is set to a numerical array. The\n            colorscale must be an array containing arrays mapping a\n            normalized value to an rgb, rgba, hex, hsl, hsv, or\n            named color string. At minimum, a mapping for the\n            lowest (0) and highest (1) values are required. For\n            example, `[[0, \'rgb(0,0,255)\', [1, \'rgb(255,0,0)\']]`.\n            To control the bounds of the colorscale in color space,\n            use`marker.cmin` and `marker.cmax`. Alternatively,\n            `colorscale` may be a palette name string of the\n            following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu\n            ,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,E\n            arth,Electric,Viridis,Cividis.\n        colorsrc\n            Sets the source reference on plot.ly for  color .\n        gradient\n            plotly.graph_objs.scattergeo.marker.Gradient instance\n            or dict with compatible properties\n        line\n            plotly.graph_objs.scattergeo.marker.Line instance or\n            dict with compatible properties\n        opacity\n            Sets the marker opacity.\n        opacitysrc\n            Sets the source reference on plot.ly for  opacity .\n        reversescale\n            Reverses the color mapping if true. Has an effect only\n            if in `marker.color`is set to a numerical array. If\n            true, `marker.cmin` will correspond to the last color\n            in the array and `marker.cmax` will correspond to the\n            first color.\n        showscale\n            Determines whether or not a colorbar is displayed for\n            this trace. Has an effect only if in `marker.color`is\n            set to a numerical array.\n        size\n            Sets the marker size (in px).\n        sizemin\n            Has an effect only if `marker.size` is set to a\n            numerical array. Sets the minimum size (in px) of the\n            rendered marker points.\n        sizemode\n            Has an effect only if `marker.size` is set to a\n            numerical array. Sets the rule for which the data in\n            `size` is converted to pixels.\n        sizeref\n            Has an effect only if `marker.size` is set to a\n            numerical array. Sets the scale factor used to\n            determine the rendered size of marker points. Use with\n            `sizemin` and `sizemode`.\n        sizesrc\n            Sets the source reference on plot.ly for  size .\n        symbol\n            Sets the marker symbol type. Adding 100 is equivalent\n            to appending "-open" to a symbol name. Adding 200 is\n            equivalent to appending "-dot" to a symbol name. Adding\n            300 is equivalent to appending "-open-dot" or "dot-\n            open" to a symbol name.\n        symbolsrc\n            Sets the source reference on plot.ly for  symbol .\n\n        Returns\n        -------\n        Marker\n        '
    super(Marker, self).__init__('marker')
    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.scattergeo.Marker \nconstructor must be a dict or \nan instance of plotly.graph_objs.scattergeo.Marker')
    self._skip_invalid = kwargs.pop('skip_invalid', False)
    from plotly.validators.scattergeo import marker as v_marker
    self._validators['autocolorscale'] = v_marker.AutocolorscaleValidator()
    self._validators['cauto'] = v_marker.CautoValidator()
    self._validators['cmax'] = v_marker.CmaxValidator()
    self._validators['cmid'] = v_marker.CmidValidator()
    self._validators['cmin'] = v_marker.CminValidator()
    self._validators['color'] = v_marker.ColorValidator()
    self._validators['coloraxis'] = v_marker.ColoraxisValidator()
    self._validators['colorbar'] = v_marker.ColorBarValidator()
    self._validators['colorscale'] = v_marker.ColorscaleValidator()
    self._validators['colorsrc'] = v_marker.ColorsrcValidator()
    self._validators['gradient'] = v_marker.GradientValidator()
    self._validators['line'] = v_marker.LineValidator()
    self._validators['opacity'] = v_marker.OpacityValidator()
    self._validators['opacitysrc'] = v_marker.OpacitysrcValidator()
    self._validators['reversescale'] = v_marker.ReversescaleValidator()
    self._validators['showscale'] = v_marker.ShowscaleValidator()
    self._validators['size'] = v_marker.SizeValidator()
    self._validators['sizemin'] = v_marker.SizeminValidator()
    self._validators['sizemode'] = v_marker.SizemodeValidator()
    self._validators['sizeref'] = v_marker.SizerefValidator()
    self._validators['sizesrc'] = v_marker.SizesrcValidator()
    self._validators['symbol'] = v_marker.SymbolValidator()
    self._validators['symbolsrc'] = v_marker.SymbolsrcValidator()
    _v = arg.pop('autocolorscale', None)
    self['autocolorscale'] = (autocolorscale if (autocolorscale is not None) else _v)
    _v = arg.pop('cauto', None)
    self['cauto'] = (cauto if (cauto is not None) else _v)
    _v = arg.pop('cmax', None)
    self['cmax'] = (cmax if (cmax is not None) else _v)
    _v = arg.pop('cmid', None)
    self['cmid'] = (cmid if (cmid is not None) else _v)
    _v = arg.pop('cmin', None)
    self['cmin'] = (cmin if (cmin is not None) else _v)
    _v = arg.pop('color', None)
    self['color'] = (color if (color is not None) else _v)
    _v = arg.pop('coloraxis', None)
    self['coloraxis'] = (coloraxis if (coloraxis is not None) else _v)
    _v = arg.pop('colorbar', None)
    self['colorbar'] = (colorbar if (colorbar is not None) else _v)
    _v = arg.pop('colorscale', None)
    self['colorscale'] = (colorscale if (colorscale is not None) else _v)
    _v = arg.pop('colorsrc', None)
    self['colorsrc'] = (colorsrc if (colorsrc is not None) else _v)
    _v = arg.pop('gradient', None)
    self['gradient'] = (gradient if (gradient is not None) else _v)
    _v = arg.pop('line', None)
    self['line'] = (line if (line is not None) else _v)
    _v = arg.pop('opacity', None)
    self['opacity'] = (opacity if (opacity is not None) else _v)
    _v = arg.pop('opacitysrc', None)
    self['opacitysrc'] = (opacitysrc if (opacitysrc is not None) else _v)
    _v = arg.pop('reversescale', None)
    self['reversescale'] = (reversescale if (reversescale is not None) else _v)
    _v = arg.pop('showscale', None)
    self['showscale'] = (showscale if (showscale is not None) else _v)
    _v = arg.pop('size', None)
    self['size'] = (size if (size is not None) else _v)
    _v = arg.pop('sizemin', None)
    self['sizemin'] = (sizemin if (sizemin is not None) else _v)
    _v = arg.pop('sizemode', None)
    self['sizemode'] = (sizemode if (sizemode is not None) else _v)
    _v = arg.pop('sizeref', None)
    self['sizeref'] = (sizeref if (sizeref is not None) else _v)
    _v = arg.pop('sizesrc', None)
    self['sizesrc'] = (sizesrc if (sizesrc is not None) else _v)
    _v = arg.pop('symbol', None)
    self['symbol'] = (symbol if (symbol is not None) else _v)
    _v = arg.pop('symbolsrc', None)
    self['symbolsrc'] = (symbolsrc if (symbolsrc is not None) else _v)
    self._process_kwargs(**dict(arg, **kwargs))
    self._skip_invalid = False
Construct a new Marker object

Parameters
----------
arg
    dict of properties compatible with this constructor or
    an instance of plotly.graph_objs.scattergeo.Marker
autocolorscale
    Determines whether the colorscale is a default palette
    (`autocolorscale: true`) or the palette determined by
    `marker.colorscale`. Has an effect only if in
    `marker.color`is set to a numerical array. In case
    `colorscale` is unspecified or `autocolorscale` is
    true, the default  palette will be chosen according to
    whether numbers in the `color` array are all positive,
    all negative or mixed.
cauto
    Determines whether or not the color domain is computed
    with respect to the input data (here in `marker.color`)
    or the bounds set in `marker.cmin` and `marker.cmax`
    Has an effect only if in `marker.color`is set to a
    numerical array. Defaults to `false` when `marker.cmin`
    and `marker.cmax` are set by the user.
cmax
    Sets the upper bound of the color domain. Has an effect
    only if in `marker.color`is set to a numerical array.
    Value should have the same units as in `marker.color`
    and if set, `marker.cmin` must be set as well.
cmid
    Sets the mid-point of the color domain by scaling
    `marker.cmin` and/or `marker.cmax` to be equidistant to
    this point. Has an effect only if in `marker.color`is
    set to a numerical array. Value should have the same
    units as in `marker.color`. Has no effect when
    `marker.cauto` is `false`.
cmin
    Sets the lower bound of the color domain. Has an effect
    only if in `marker.color`is set to a numerical array.
    Value should have the same units as in `marker.color`
    and if set, `marker.cmax` must be set as well.
color
    Sets themarkercolor. It accepts either a specific color
    or an array of numbers that are mapped to the
    colorscale relative to the max and min values of the
    array or relative to `marker.cmin` and `marker.cmax` if
    set.
coloraxis
    Sets a reference to a shared color axis. References to
    these shared color axes are "coloraxis", "coloraxis2",
    "coloraxis3", etc. Settings for these shared color axes
    are set in the layout, under `layout.coloraxis`,
    `layout.coloraxis2`, etc. Note that multiple color
    scales can be linked to the same color axis.
colorbar
    plotly.graph_objs.scattergeo.marker.ColorBar instance
    or dict with compatible properties
colorscale
    Sets the colorscale. Has an effect only if in
    `marker.color`is set to a numerical array. The
    colorscale must be an array containing arrays mapping a
    normalized value to an rgb, rgba, hex, hsl, hsv, or
    named color string. At minimum, a mapping for the
    lowest (0) and highest (1) values are required. For
    example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`.
    To control the bounds of the colorscale in color space,
    use`marker.cmin` and `marker.cmax`. Alternatively,
    `colorscale` may be a palette name string of the
    following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu
    ,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,E
    arth,Electric,Viridis,Cividis.
colorsrc
    Sets the source reference on plot.ly for  color .
gradient
    plotly.graph_objs.scattergeo.marker.Gradient instance
    or dict with compatible properties
line
    plotly.graph_objs.scattergeo.marker.Line instance or
    dict with compatible properties
opacity
    Sets the marker opacity.
opacitysrc
    Sets the source reference on plot.ly for  opacity .
reversescale
    Reverses the color mapping if true. Has an effect only
    if in `marker.color`is set to a numerical array. If
    true, `marker.cmin` will correspond to the last color
    in the array and `marker.cmax` will correspond to the
    first color.
showscale
    Determines whether or not a colorbar is displayed for
    this trace. Has an effect only if in `marker.color`is
    set to a numerical array.
size
    Sets the marker size (in px).
sizemin
    Has an effect only if `marker.size` is set to a
    numerical array. Sets the minimum size (in px) of the
    rendered marker points.
sizemode
    Has an effect only if `marker.size` is set to a
    numerical array. Sets the rule for which the data in
    `size` is converted to pixels.
sizeref
    Has an effect only if `marker.size` is set to a
    numerical array. Sets the scale factor used to
    determine the rendered size of marker points. Use with
    `sizemin` and `sizemode`.
sizesrc
    Sets the source reference on plot.ly for  size .
symbol
    Sets the marker symbol type. Adding 100 is equivalent
    to appending "-open" to a symbol name. Adding 200 is
    equivalent to appending "-dot" to a symbol name. Adding
    300 is equivalent to appending "-open-dot" or "dot-
    open" to a symbol name.
symbolsrc
    Sets the source reference on plot.ly for  symbol .

Returns
-------
Marker
def __init__(self, arg=None, autocolorscale=None, cauto=None, cmax=None, cmid=None, cmin=None, color=None, coloraxis=None, colorbar=None, colorscale=None, colorsrc=None, gradient=None, line=None, opacity=None, opacitysrc=None, reversescale=None, showscale=None, size=None, sizemin=None, sizemode=None, sizeref=None, sizesrc=None, symbol=None, symbolsrc=None, **kwargs):
    '\n        Construct a new Marker object\n        \n        Parameters\n        ----------\n        arg\n            dict of properties compatible with this constructor or\n            an instance of plotly.graph_objs.scattergeo.Marker\n        autocolorscale\n            Determines whether the colorscale is a default palette\n            (`autocolorscale: true`) or the palette determined by\n            `marker.colorscale`. Has an effect only if in\n            `marker.color`is set to a numerical array. In case\n            `colorscale` is unspecified or `autocolorscale` is\n            true, the default  palette will be chosen according to\n            whether numbers in the `color` array are all positive,\n            all negative or mixed.\n        cauto\n            Determines whether or not the color domain is computed\n            with respect to the input data (here in `marker.color`)\n            or the bounds set in `marker.cmin` and `marker.cmax`\n            Has an effect only if in `marker.color`is set to a\n            numerical array. Defaults to `false` when `marker.cmin`\n            and `marker.cmax` are set by the user.\n        cmax\n            Sets the upper bound of the color domain. Has an effect\n            only if in `marker.color`is set to a numerical array.\n            Value should have the same units as in `marker.color`\n            and if set, `marker.cmin` must be set as well.\n        cmid\n            Sets the mid-point of the color domain by scaling\n            `marker.cmin` and/or `marker.cmax` to be equidistant to\n            this point. Has an effect only if in `marker.color`is\n            set to a numerical array. Value should have the same\n            units as in `marker.color`. Has no effect when\n            `marker.cauto` is `false`.\n        cmin\n            Sets the lower bound of the color domain. Has an effect\n            only if in `marker.color`is set to a numerical array.\n            Value should have the same units as in `marker.color`\n            and if set, `marker.cmax` must be set as well.\n        color\n            Sets themarkercolor. It accepts either a specific color\n            or an array of numbers that are mapped to the\n            colorscale relative to the max and min values of the\n            array or relative to `marker.cmin` and `marker.cmax` if\n            set.\n        coloraxis\n            Sets a reference to a shared color axis. References to\n            these shared color axes are "coloraxis", "coloraxis2",\n            "coloraxis3", etc. Settings for these shared color axes\n            are set in the layout, under `layout.coloraxis`,\n            `layout.coloraxis2`, etc. Note that multiple color\n            scales can be linked to the same color axis.\n        colorbar\n            plotly.graph_objs.scattergeo.marker.ColorBar instance\n            or dict with compatible properties\n        colorscale\n            Sets the colorscale. Has an effect only if in\n            `marker.color`is set to a numerical array. The\n            colorscale must be an array containing arrays mapping a\n            normalized value to an rgb, rgba, hex, hsl, hsv, or\n            named color string. At minimum, a mapping for the\n            lowest (0) and highest (1) values are required. For\n            example, `[[0, \'rgb(0,0,255)\', [1, \'rgb(255,0,0)\']]`.\n            To control the bounds of the colorscale in color space,\n            use`marker.cmin` and `marker.cmax`. Alternatively,\n            `colorscale` may be a palette name string of the\n            following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu\n            ,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,E\n            arth,Electric,Viridis,Cividis.\n        colorsrc\n            Sets the source reference on plot.ly for  color .\n        gradient\n            plotly.graph_objs.scattergeo.marker.Gradient instance\n            or dict with compatible properties\n        line\n            plotly.graph_objs.scattergeo.marker.Line instance or\n            dict with compatible properties\n        opacity\n            Sets the marker opacity.\n        opacitysrc\n            Sets the source reference on plot.ly for  opacity .\n        reversescale\n            Reverses the color mapping if true. Has an effect only\n            if in `marker.color`is set to a numerical array. If\n            true, `marker.cmin` will correspond to the last color\n            in the array and `marker.cmax` will correspond to the\n            first color.\n        showscale\n            Determines whether or not a colorbar is displayed for\n            this trace. Has an effect only if in `marker.color`is\n            set to a numerical array.\n        size\n            Sets the marker size (in px).\n        sizemin\n            Has an effect only if `marker.size` is set to a\n            numerical array. Sets the minimum size (in px) of the\n            rendered marker points.\n        sizemode\n            Has an effect only if `marker.size` is set to a\n            numerical array. Sets the rule for which the data in\n            `size` is converted to pixels.\n        sizeref\n            Has an effect only if `marker.size` is set to a\n            numerical array. Sets the scale factor used to\n            determine the rendered size of marker points. Use with\n            `sizemin` and `sizemode`.\n        sizesrc\n            Sets the source reference on plot.ly for  size .\n        symbol\n            Sets the marker symbol type. Adding 100 is equivalent\n            to appending "-open" to a symbol name. Adding 200 is\n            equivalent to appending "-dot" to a symbol name. Adding\n            300 is equivalent to appending "-open-dot" or "dot-\n            open" to a symbol name.\n        symbolsrc\n            Sets the source reference on plot.ly for  symbol .\n\n        Returns\n        -------\n        Marker\n        '
    super(Marker, self).__init__('marker')
    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.scattergeo.Marker \nconstructor must be a dict or \nan instance of plotly.graph_objs.scattergeo.Marker')
    self._skip_invalid = kwargs.pop('skip_invalid', False)
    from plotly.validators.scattergeo import marker as v_marker
    self._validators['autocolorscale'] = v_marker.AutocolorscaleValidator()
    self._validators['cauto'] = v_marker.CautoValidator()
    self._validators['cmax'] = v_marker.CmaxValidator()
    self._validators['cmid'] = v_marker.CmidValidator()
    self._validators['cmin'] = v_marker.CminValidator()
    self._validators['color'] = v_marker.ColorValidator()
    self._validators['coloraxis'] = v_marker.ColoraxisValidator()
    self._validators['colorbar'] = v_marker.ColorBarValidator()
    self._validators['colorscale'] = v_marker.ColorscaleValidator()
    self._validators['colorsrc'] = v_marker.ColorsrcValidator()
    self._validators['gradient'] = v_marker.GradientValidator()
    self._validators['line'] = v_marker.LineValidator()
    self._validators['opacity'] = v_marker.OpacityValidator()
    self._validators['opacitysrc'] = v_marker.OpacitysrcValidator()
    self._validators['reversescale'] = v_marker.ReversescaleValidator()
    self._validators['showscale'] = v_marker.ShowscaleValidator()
    self._validators['size'] = v_marker.SizeValidator()
    self._validators['sizemin'] = v_marker.SizeminValidator()
    self._validators['sizemode'] = v_marker.SizemodeValidator()
    self._validators['sizeref'] = v_marker.SizerefValidator()
    self._validators['sizesrc'] = v_marker.SizesrcValidator()
    self._validators['symbol'] = v_marker.SymbolValidator()
    self._validators['symbolsrc'] = v_marker.SymbolsrcValidator()
    _v = arg.pop('autocolorscale', None)
    self['autocolorscale'] = (autocolorscale if (autocolorscale is not None) else _v)
    _v = arg.pop('cauto', None)
    self['cauto'] = (cauto if (cauto is not None) else _v)
    _v = arg.pop('cmax', None)
    self['cmax'] = (cmax if (cmax is not None) else _v)
    _v = arg.pop('cmid', None)
    self['cmid'] = (cmid if (cmid is not None) else _v)
    _v = arg.pop('cmin', None)
    self['cmin'] = (cmin if (cmin is not None) else _v)
    _v = arg.pop('color', None)
    self['color'] = (color if (color is not None) else _v)
    _v = arg.pop('coloraxis', None)
    self['coloraxis'] = (coloraxis if (coloraxis is not None) else _v)
    _v = arg.pop('colorbar', None)
    self['colorbar'] = (colorbar if (colorbar is not None) else _v)
    _v = arg.pop('colorscale', None)
    self['colorscale'] = (colorscale if (colorscale is not None) else _v)
    _v = arg.pop('colorsrc', None)
    self['colorsrc'] = (colorsrc if (colorsrc is not None) else _v)
    _v = arg.pop('gradient', None)
    self['gradient'] = (gradient if (gradient is not None) else _v)
    _v = arg.pop('line', None)
    self['line'] = (line if (line is not None) else _v)
    _v = arg.pop('opacity', None)
    self['opacity'] = (opacity if (opacity is not None) else _v)
    _v = arg.pop('opacitysrc', None)
    self['opacitysrc'] = (opacitysrc if (opacitysrc is not None) else _v)
    _v = arg.pop('reversescale', None)
    self['reversescale'] = (reversescale if (reversescale is not None) else _v)
    _v = arg.pop('showscale', None)
    self['showscale'] = (showscale if (showscale is not None) else _v)
    _v = arg.pop('size', None)
    self['size'] = (size if (size is not None) else _v)
    _v = arg.pop('sizemin', None)
    self['sizemin'] = (sizemin if (sizemin is not None) else _v)
    _v = arg.pop('sizemode', None)
    self['sizemode'] = (sizemode if (sizemode is not None) else _v)
    _v = arg.pop('sizeref', None)
    self['sizeref'] = (sizeref if (sizeref is not None) else _v)
    _v = arg.pop('sizesrc', None)
    self['sizesrc'] = (sizesrc if (sizesrc is not None) else _v)
    _v = arg.pop('symbol', None)
    self['symbol'] = (symbol if (symbol is not None) else _v)
    _v = arg.pop('symbolsrc', None)
    self['symbolsrc'] = (symbolsrc if (symbolsrc is not None) else _v)
    self._process_kwargs(**dict(arg, **kwargs))
    self._skip_invalid = False