docstr: Construct a new Indicator object
  
  An indicator is used to visualize a single `value` along with
  some contextual information such as `steps` or a `threshold`,
  using a combination of three visual elements: a number, a
  delta, and/or a gauge. Deltas are taken with respect to a
  `reference`. Gauges can be either angular or bullet (aka
  linear) gauges.
  
  Parameters
  ----------
  arg
      dict of properties compatible with this constructor or
      an instance of :class:`plotly.graph_objs.Indicator`
  align
      Sets the horizontal alignment of the `text` within the
      box. Note that this attribute has no effect if an
      angular gauge is displayed: in this case, it is always
      centered
  customdata
      Assigns extra data each datum. This may be useful when
      listening to hover, click and selection events. Note
      that, "scatter" traces also appends customdata items in
      the markers DOM elements
  customdatasrc
      Sets the source reference on Chart Studio Cloud for
      customdata .
  delta
      :class:`plotly.graph_objects.indicator.Delta` instance
      or dict with compatible properties
  domain
      :class:`plotly.graph_objects.indicator.Domain` instance
      or dict with compatible properties
  gauge
      The gauge of the Indicator plot.
  ids
      Assigns id labels to each datum. These ids for object
      constancy of data points during animation. Should be an
      array of strings, not numbers or any other type.
  idssrc
      Sets the source reference on Chart Studio Cloud for
      ids .
  meta
      Assigns extra meta information associated with this
      trace that can be used in various text attributes.
      Attributes such as trace `name`, graph, axis and
      colorbar `title.text`, annotation `text`
      `rangeselector`, `updatemenues` and `sliders` `label`
      text all support `meta`. To access the trace `meta`
      values in an attribute in the same trace, simply use
      `%{meta[i]}` where `i` is the index or key of the
      `meta` item in question. To access trace `meta` in
      layout attributes, use `%{data[n[.meta[i]}` where `i`
      is the index or key of the `meta` and `n` is the trace
      index.
  metasrc
      Sets the source reference on Chart Studio Cloud for
      meta .
  mode
      Determines how the value is displayed on the graph.
      `number` displays the value numerically in text.
      `delta` displays the difference to a reference value in
      text. Finally, `gauge` displays the value graphically
      on an axis.
  name
      Sets the trace name. The trace name appear as the
      legend item and on hover.
  number
      :class:`plotly.graph_objects.indicator.Number` instance
      or dict with compatible properties
  stream
      :class:`plotly.graph_objects.indicator.Stream` instance
      or dict with compatible properties
  title
      :class:`plotly.graph_objects.indicator.Title` instance
      or dict with compatible properties
  uid
      Assign an id to this trace, Use this to provide object
      constancy between traces during animations and
      transitions.
  uirevision
      Controls persistence of some user-driven changes to the
      trace: `constraintrange` in `parcoords` traces, as well
      as some `editable: true` modifications such as `name`
      and `colorbar.title`. Defaults to `layout.uirevision`.
      Note that other user-driven trace attribute changes are
      controlled by `layout` attributes: `trace.visible` is
      controlled by `layout.legend.uirevision`,
      `selectedpoints` is controlled by
      `layout.selectionrevision`, and `colorbar.(x|y)`
      (accessible with `config: {editable: true}`) is
      controlled by `layout.editrevision`. Trace changes are
      tracked by `uid`, which only falls back on trace index
      if no `uid` is provided. So if your app can add/remove
      traces before the end of the `data` array, such that
      the same trace has a different index, you can still
      preserve user-driven changes if you give each trace a
      `uid` that stays with it as it moves.
  value
      Sets the number to be displayed.
  visible
      Determines whether or not this trace is visible. If
      "legendonly", the trace is not drawn, but can appear as
      a legend item (provided that the legend itself is
      visible).
  
  Returns
  -------
  Indicator
docstr_tok: ["Construct","a","new","Indicator","object","An","indicator","is","used","to","visualize","a","single","`","value","`","along","with","some","contextual","information","such","as","`","steps","`","or","a","`","threshold","`",",","using","a","combination","of","three","visual","elements",":","a","number",",","a","delta",",","and\/or","a","gauge",".","Deltas","are","taken","with","respect","to","a","`","reference","`",".","Gauges","can","be","either","angular","or","bullet","(","aka","linear",")","gauges",".","Parameters","--","--","--","--","--","arg","dict","of","properties","compatible","with","this","constructor","or","an","instance","of",":","class",":","`","plotly.graph_objs.Indicator","`","align","Sets","the","horizontal","alignment","of","the","`","text","`","within","the","box",".","Note","that","this","attribute","has","no","effect","if","an","angular","gauge","is","displayed",":","in","this","case",",","it","is","always","centered","customdata","Assigns","extra","data","each","datum",".","This","may","be","useful","when","listening","to","hover",",","click","and","selection","events",".","Note","that",",","``","scatter","''","traces","also","appends","customdata","items","in","the","markers","DOM","elements","customdatasrc","Sets","the","source","reference","on","Chart","Studio","Cloud","for","customdata",".","delta",":","class",":","`","plotly.graph_objects.indicator.Delta","`","instance","or","dict","with","compatible","properties","domain",":","class",":","`","plotly.graph_objects.indicator.Domain","`","instance","or","dict","with","compatible","properties","gauge","The","gauge","of","the","Indicator","plot",".","ids","Assigns","id","labels","to","each","datum",".","These","ids","for","object","constancy","of","data","points","during","animation",".","Should","be","an","array","of","strings",",","not","numbers","or","any","other","type",".","idssrc","Sets","the","source","reference","on","Chart","Studio","Cloud","for","ids",".","meta","Assigns","extra","meta","information","associated","with","this","trace","that","can","be","used","in","various","text","attributes",".","Attributes","such","as","trace","`","name","`",",","graph",",","axis","and","colorbar","`","title.text","`",",","annotation","`","text","`","`","rangeselector","`",",","`","updatemenues","`","and","`","sliders","`","`","label","`","text","all","support","`","meta","`",".","To","access","the","trace","`","meta","`","values","in","an","attribute","in","the","same","trace",",","simply","use","`","%","{","meta","[","i","]","}","`","where","`","i","`","is","the","index","or","key","of","the","`","meta","`","item","in","question",".","To","access","trace","`","meta","`","in","layout","attributes",",","use","`","%","{","data","[","n","[",".meta","[","i","]","}","`","where","`","i","`","is","the","index","or","key","of","the","`","meta","`","and","`","n","`","is","the","trace","index",".","metasrc","Sets","the","source","reference","on","Chart","Studio","Cloud","for","meta",".","mode","Determines","how","the","value","is","displayed","on","the","graph",".","`","number","`","displays","the","value","numerically","in","text",".","`","delta","`","displays","the","difference","to","a","reference","value","in","text",".","Finally",",","`","gauge","`","displays","the","value","graphically","on","an","axis",".","name","Sets","the","trace","name",".","The","trace","name","appear","as","the","legend","item","and","on","hover",".","number",":","class",":","`","plotly.graph_objects.indicator.Number","`","instance","or","dict","with","compatible","properties","stream",":","class",":","`","plotly.graph_objects.indicator.Stream","`","instance","or","dict","with","compatible","properties","title",":","class",":","`","plotly.graph_objects.indicator.Title","`","instance","or","dict","with","compatible","properties","uid","Assign","an","id","to","this","trace",",","Use","this","to","provide","object","constancy","between","traces","during","animations","and","transitions",".","uirevision","Controls","persistence","of","some","user-driven","changes","to","the","trace",":","`","constraintrange","`","in","`","parcoords","`","traces",",","as","well","as","some","`","editable",":","true","`","modifications","such","as","`","name","`","and","`","colorbar.title","`",".","Defaults","to","`","layout.uirevision","`",".","Note","that","other","user-driven","trace","attribute","changes","are","controlled","by","`","layout","`","attributes",":","`","trace.visible","`","is","controlled","by","`","layout.legend.uirevision","`",",","`","selectedpoints","`","is","controlled","by","`","layout.selectionrevision","`",",","and","`","colorbar",".","(","x|y",")","`","(","accessible","with","`","config",":","{","editable",":","true","}","`",")","is","controlled","by","`","layout.editrevision","`",".","Trace","changes","are","tracked","by","`","uid","`",",","which","only","falls","back","on","trace","index","if","no","`","uid","`","is","provided",".","So","if","your","app","can","add\/remove","traces","before","the","end","of","the","`","data","`","array",",","such","that","the","same","trace","has","a","different","index",",","you","can","still","preserve","user-driven","changes","if","you","give","each","trace","a","`","uid","`","that","stays","with","it","as","it","moves",".","value","Sets","the","number","to","be","displayed",".","visible","Determines","whether","or","not","this","trace","is","visible",".","If","``","legendonly","''",",","the","trace","is","not","drawn",",","but","can","appear","as","a","legend","item","(","provided","that","the","legend","itself","is","visible",")",".","Returns","--","--","--","-","Indicator"]
code: def __init__(
      self,
      arg=None,
      align=None,
      customdata=None,
      customdatasrc=None,
      delta=None,
      domain=None,
      gauge=None,
      ids=None,
      idssrc=None,
      meta=None,
      metasrc=None,
      mode=None,
      name=None,
      number=None,
      stream=None,
      title=None,
      uid=None,
      uirevision=None,
      value=None,
      visible=None,
      **kwargs,
  ):
      """
      Construct a new Indicator object
  
      An indicator is used to visualize a single `value` along with
      some contextual information such as `steps` or a `threshold`,
      using a combination of three visual elements: a number, a
      delta, and/or a gauge. Deltas are taken with respect to a
      `reference`. Gauges can be either angular or bullet (aka
      linear) gauges.
  
      Parameters
      ----------
      arg
          dict of properties compatible with this constructor or
          an instance of :class:`plotly.graph_objs.Indicator`
      align
          Sets the horizontal alignment of the `text` within the
          box. Note that this attribute has no effect if an
          angular gauge is displayed: in this case, it is always
          centered
      customdata
          Assigns extra data each datum. This may be useful when
          listening to hover, click and selection events. Note
          that, "scatter" traces also appends customdata items in
          the markers DOM elements
      customdatasrc
          Sets the source reference on Chart Studio Cloud for
          customdata .
      delta
          :class:`plotly.graph_objects.indicator.Delta` instance
          or dict with compatible properties
      domain
          :class:`plotly.graph_objects.indicator.Domain` instance
          or dict with compatible properties
      gauge
          The gauge of the Indicator plot.
      ids
          Assigns id labels to each datum. These ids for object
          constancy of data points during animation. Should be an
          array of strings, not numbers or any other type.
      idssrc
          Sets the source reference on Chart Studio Cloud for
          ids .
      meta
          Assigns extra meta information associated with this
          trace that can be used in various text attributes.
          Attributes such as trace `name`, graph, axis and
          colorbar `title.text`, annotation `text`
          `rangeselector`, `updatemenues` and `sliders` `label`
          text all support `meta`. To access the trace `meta`
          values in an attribute in the same trace, simply use
          `%{meta[i]}` where `i` is the index or key of the
          `meta` item in question. To access trace `meta` in
          layout attributes, use `%{data[n[.meta[i]}` where `i`
          is the index or key of the `meta` and `n` is the trace
          index.
      metasrc
          Sets the source reference on Chart Studio Cloud for
          meta .
      mode
          Determines how the value is displayed on the graph.
          `number` displays the value numerically in text.
          `delta` displays the difference to a reference value in
          text. Finally, `gauge` displays the value graphically
          on an axis.
      name
          Sets the trace name. The trace name appear as the
          legend item and on hover.
      number
          :class:`plotly.graph_objects.indicator.Number` instance
          or dict with compatible properties
      stream
          :class:`plotly.graph_objects.indicator.Stream` instance
          or dict with compatible properties
      title
          :class:`plotly.graph_objects.indicator.Title` instance
          or dict with compatible properties
      uid
          Assign an id to this trace, Use this to provide object
          constancy between traces during animations and
          transitions.
      uirevision
          Controls persistence of some user-driven changes to the
          trace: `constraintrange` in `parcoords` traces, as well
          as some `editable: true` modifications such as `name`
          and `colorbar.title`. Defaults to `layout.uirevision`.
          Note that other user-driven trace attribute changes are
          controlled by `layout` attributes: `trace.visible` is
          controlled by `layout.legend.uirevision`,
          `selectedpoints` is controlled by
          `layout.selectionrevision`, and `colorbar.(x|y)`
          (accessible with `config: {editable: true}`) is
          controlled by `layout.editrevision`. Trace changes are
          tracked by `uid`, which only falls back on trace index
          if no `uid` is provided. So if your app can add/remove
          traces before the end of the `data` array, such that
          the same trace has a different index, you can still
          preserve user-driven changes if you give each trace a
          `uid` that stays with it as it moves.
      value
          Sets the number to be displayed.
      visible
          Determines whether or not this trace is visible. If
          "legendonly", the trace is not drawn, but can appear as
          a legend item (provided that the legend itself is
          visible).
  
      Returns
      -------
      Indicator
      """
      super(Indicator, self).__init__("indicator")
  
      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.Indicator 
  constructor must be a dict or 
  an instance of :class:`plotly.graph_objs.Indicator`"""
          )
  
      # 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("align", None)
      _v = align if align is not None else _v
      if _v is not None:
          self["align"] = _v
      _v = arg.pop("customdata", None)
      _v = customdata if customdata is not None else _v
      if _v is not None:
          self["customdata"] = _v
      _v = arg.pop("customdatasrc", None)
      _v = customdatasrc if customdatasrc is not None else _v
      if _v is not None:
          self["customdatasrc"] = _v
      _v = arg.pop("delta", None)
      _v = delta if delta is not None else _v
      if _v is not None:
          self["delta"] = _v
      _v = arg.pop("domain", None)
      _v = domain if domain is not None else _v
      if _v is not None:
          self["domain"] = _v
      _v = arg.pop("gauge", None)
      _v = gauge if gauge is not None else _v
      if _v is not None:
          self["gauge"] = _v
      _v = arg.pop("ids", None)
      _v = ids if ids is not None else _v
      if _v is not None:
          self["ids"] = _v
      _v = arg.pop("idssrc", None)
      _v = idssrc if idssrc is not None else _v
      if _v is not None:
          self["idssrc"] = _v
      _v = arg.pop("meta", None)
      _v = meta if meta is not None else _v
      if _v is not None:
          self["meta"] = _v
      _v = arg.pop("metasrc", None)
      _v = metasrc if metasrc is not None else _v
      if _v is not None:
          self["metasrc"] = _v
      _v = arg.pop("mode", None)
      _v = mode if mode is not None else _v
      if _v is not None:
          self["mode"] = _v
      _v = arg.pop("name", None)
      _v = name if name is not None else _v
      if _v is not None:
          self["name"] = _v
      _v = arg.pop("number", None)
      _v = number if number is not None else _v
      if _v is not None:
          self["number"] = _v
      _v = arg.pop("stream", None)
      _v = stream if stream is not None else _v
      if _v is not None:
          self["stream"] = _v
      _v = arg.pop("title", None)
      _v = title if title is not None else _v
      if _v is not None:
          self["title"] = _v
      _v = arg.pop("uid", None)
      _v = uid if uid is not None else _v
      if _v is not None:
          self["uid"] = _v
      _v = arg.pop("uirevision", None)
      _v = uirevision if uirevision is not None else _v
      if _v is not None:
          self["uirevision"] = _v
      _v = arg.pop("value", None)
      _v = value if value is not None else _v
      if _v is not None:
          self["value"] = _v
      _v = arg.pop("visible", None)
      _v = visible if visible is not None else _v
      if _v is not None:
          self["visible"] = _v
  
      # Read-only literals
      # ------------------
  
      self._props["type"] = "indicator"
      arg.pop("type", None)
  
      # Process unknown kwargs
      # ----------------------
      self._process_kwargs(**dict(arg, **kwargs))
  
      # Reset skip_invalid
      # ------------------
      self._skip_invalid = False
  
imports: from plotly.basedatatypes import BaseTraceType
  import copy
label_desc: Use image node_id 41 to create a new Indicator object from inherited base classes: _BaseTraceType with example: obj = Indicator(arg, align, customdata, customdatasrc, delta, domain, gauge, ids, idssrc, meta, metasrc, mode, name, number, stream, title, uid, uirevision, value, visible)