docstr: Construct a new Label object
  
  Parameters
  ----------
  arg
      dict of properties compatible with this constructor or
      an instance of
      :class:`plotly.graph_objs.layout.newshape.Label`
  font
      Sets the new shape label text font.
  padding
      Sets padding (in px) between edge of label and edge of
      new shape.
  text
      Sets the text to display with the new shape. It is also
      used for legend item if `name` is not provided.
  textangle
      Sets the angle at which the label text is drawn with
      respect to the horizontal. For lines, angle "auto" is
      the same angle as the line. For all other shapes, angle
      "auto" is horizontal.
  textposition
      Sets the position of the label text relative to the new
      shape. Supported values for rectangles, circles and
      paths are *top left*, *top center*, *top right*,
      *middle left*, *middle center*, *middle right*, *bottom
      left*, *bottom center*, and *bottom right*. Supported
      values for lines are "start", "middle", and "end".
      Default: *middle center* for rectangles, circles, and
      paths; "middle" for lines.
  texttemplate
      Template string used for rendering the new shape's
      label. Note that this will override `text`. Variables
      are inserted using %{variable}, for example "x0:
      %{x0}". Numbers are formatted using d3-format's syntax
      %{variable:d3-format}, for example "Price: %{x0:$.2f}".
      See
      https://github.com/d3/d3-format/tree/v1.4.5#d3-format
      for details on the formatting syntax. Dates are
      formatted using d3-time-format's syntax
      %{variable|d3-time-format}, for example "Day: %{x0|%m
      %b %Y}". See https://github.com/d3/d3-time-
      format/tree/v2.2.3#locale_format for details on the
      date formatting syntax. A single multiplication or
      division operation may be applied to numeric variables,
      and combined with d3 number formatting, for example
      "Length in cm: %{x0*2.54}", "%{slope*60:.1f} meters per
      second." For log axes, variable values are given in log
      units. For date axes, x/y coordinate variables and
      center variables use datetimes, while all other
      variable values use values in ms. Finally, the template
      string has access to variables `x0`, `x1`, `y0`, `y1`,
      `slope`, `dx`, `dy`, `width`, `height`, `length`,
      `xcenter` and `ycenter`.
  xanchor
      Sets the label's horizontal position anchor This anchor
      binds the specified `textposition` to the "left",
      "center" or "right" of the label text. For example, if
      `textposition` is set to *top right* and `xanchor` to
      "right" then the right-most portion of the label text
      lines up with the right-most edge of the new shape.
  yanchor
      Sets the label's vertical position anchor This anchor
      binds the specified `textposition` to the "top",
      "middle" or "bottom" of the label text. For example, if
      `textposition` is set to *top right* and `yanchor` to
      "top" then the top-most portion of the label text lines
      up with the top-most edge of the new shape.
  
  Returns
  -------
  Label
docstr_tok: ["Construct","a","new","Label","object","Parameters","--","--","--","--","--","arg","dict","of","properties","compatible","with","this","constructor","or","an","instance","of",":","class",":","`","plotly.graph_objs.layout.newshape.Label","`","font","Sets","the","new","shape","label","text","font",".","padding","Sets","padding","(","in","px",")","between","edge","of","label","and","edge","of","new","shape",".","text","Sets","the","text","to","display","with","the","new","shape",".","It","is","also","used","for","legend","item","if","`","name","`","is","not","provided",".","textangle","Sets","the","angle","at","which","the","label","text","is","drawn","with","respect","to","the","horizontal",".","For","lines",",","angle","``","auto","''","is","the","same","angle","as","the","line",".","For","all","other","shapes",",","angle","``","auto","''","is","horizontal",".","textposition","Sets","the","position","of","the","label","text","relative","to","the","new","shape",".","Supported","values","for","rectangles",",","circles","and","paths","are","*","top","left","*",",","*","top","center","*",",","*","top","right","*",",","*","middle","left","*",",","*","middle","center","*",",","*","middle","right","*",",","*","bottom","left","*",",","*","bottom","center","*",",","and","*","bottom","right","*",".","Supported","values","for","lines","are","``","start","''",",","``","middle","''",",","and","``","end","''",".","Default",":","*","middle","center","*","for","rectangles",",","circles",",","and","paths",";","``","middle","''","for","lines",".","texttemplate","Template","string","used","for","rendering","the","new","shape's","label",".","Note","that","this","will","override","`","text","`",".","Variables","are","inserted","using","%","{","variable","}",",","for","example","``","x0",":","%","{","x0","}","''",".","Numbers","are","formatted","using","d3-format","'s","syntax","%","{","variable",":","d3-format","}",",","for","example","``","Price",":","%","{","x0",":","$",".2f","}","''",".","See","https",":","\/\/github.com\/d3\/d3-format\/tree\/v1.4.5","#","d3-format","for","details","on","the","formatting","syntax",".","Dates","are","formatted","using","d3-time-format","'s","syntax","%","{","variable|d3-time-format","}",",","for","example","``","Day",":","%","{","x0|","%","m","%","b","%","Y","}","''",".","See","https",":","\/\/github.com\/d3\/d3-time-","format\/tree\/v2.2.3","#","locale_format","for","details","on","the","date","formatting","syntax",".","A","single","multiplication","or","division","operation","may","be","applied","to","numeric","variables",",","and","combined","with","d3","number","formatting",",","for","example","``","Length","in","cm",":","%","{","x0","*","2.54","}","''",",","``","%","{","slope","*","60",":",".1f","}","meters","per","second",".","''","For","log","axes",",","variable","values","are","given","in","log","units",".","For","date","axes",",","x\/y","coordinate","variables","and","center","variables","use","datetimes",",","while","all","other","variable","values","use","values","in","ms",".","Finally",",","the","template","string","has","access","to","variables","`","x0","`",",","`","x1","`",",","`","y0","`",",","`","y1","`",",","`","slope","`",",","`","dx","`",",","`","dy","`",",","`","width","`",",","`","height","`",",","`","length","`",",","`","xcenter","`","and","`","ycenter","`",".","xanchor","Sets","the","label","'s","horizontal","position","anchor","This","anchor","binds","the","specified","`","textposition","`","to","the","``","left","''",",","``","center","''","or","``","right","''","of","the","label","text",".","For","example",",","if","`","textposition","`","is","set","to","*","top","right","*","and","`","xanchor","`","to","``","right","''","then","the","right-most","portion","of","the","label","text","lines","up","with","the","right-most","edge","of","the","new","shape",".","yanchor","Sets","the","label","'s","vertical","position","anchor","This","anchor","binds","the","specified","`","textposition","`","to","the","``","top","''",",","``","middle","''","or","``","bottom","''","of","the","label","text",".","For","example",",","if","`","textposition","`","is","set","to","*","top","right","*","and","`","yanchor","`","to","``","top","''","then","the","top-most","portion","of","the","label","text","lines","up","with","the","top-most","edge","of","the","new","shape",".","Returns","--","--","--","-","Label"]
code: def __init__(
      self,
      arg=None,
      font=None,
      padding=None,
      text=None,
      textangle=None,
      textposition=None,
      texttemplate=None,
      xanchor=None,
      yanchor=None,
      **kwargs,
  ):
      """
      Construct a new Label object
  
      Parameters
      ----------
      arg
          dict of properties compatible with this constructor or
          an instance of
          :class:`plotly.graph_objs.layout.newshape.Label`
      font
          Sets the new shape label text font.
      padding
          Sets padding (in px) between edge of label and edge of
          new shape.
      text
          Sets the text to display with the new shape. It is also
          used for legend item if `name` is not provided.
      textangle
          Sets the angle at which the label text is drawn with
          respect to the horizontal. For lines, angle "auto" is
          the same angle as the line. For all other shapes, angle
          "auto" is horizontal.
      textposition
          Sets the position of the label text relative to the new
          shape. Supported values for rectangles, circles and
          paths are *top left*, *top center*, *top right*,
          *middle left*, *middle center*, *middle right*, *bottom
          left*, *bottom center*, and *bottom right*. Supported
          values for lines are "start", "middle", and "end".
          Default: *middle center* for rectangles, circles, and
          paths; "middle" for lines.
      texttemplate
          Template string used for rendering the new shape's
          label. Note that this will override `text`. Variables
          are inserted using %{variable}, for example "x0:
          %{x0}". Numbers are formatted using d3-format's syntax
          %{variable:d3-format}, for example "Price: %{x0:$.2f}".
          See
          https://github.com/d3/d3-format/tree/v1.4.5#d3-format
          for details on the formatting syntax. Dates are
          formatted using d3-time-format's syntax
          %{variable|d3-time-format}, for example "Day: %{x0|%m
          %b %Y}". See https://github.com/d3/d3-time-
          format/tree/v2.2.3#locale_format for details on the
          date formatting syntax. A single multiplication or
          division operation may be applied to numeric variables,
          and combined with d3 number formatting, for example
          "Length in cm: %{x0*2.54}", "%{slope*60:.1f} meters per
          second." For log axes, variable values are given in log
          units. For date axes, x/y coordinate variables and
          center variables use datetimes, while all other
          variable values use values in ms. Finally, the template
          string has access to variables `x0`, `x1`, `y0`, `y1`,
          `slope`, `dx`, `dy`, `width`, `height`, `length`,
          `xcenter` and `ycenter`.
      xanchor
          Sets the label's horizontal position anchor This anchor
          binds the specified `textposition` to the "left",
          "center" or "right" of the label text. For example, if
          `textposition` is set to *top right* and `xanchor` to
          "right" then the right-most portion of the label text
          lines up with the right-most edge of the new shape.
      yanchor
          Sets the label's vertical position anchor This anchor
          binds the specified `textposition` to the "top",
          "middle" or "bottom" of the label text. For example, if
          `textposition` is set to *top right* and `yanchor` to
          "top" then the top-most portion of the label text lines
          up with the top-most edge of the new shape.
  
      Returns
      -------
      Label
      """
      super(Label, self).__init__("label")
  
      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.layout.newshape.Label
  constructor must be a dict or
  an instance of :class:`plotly.graph_objs.layout.newshape.Label`"""
          )
  
      # 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("font", None)
      _v = font if font is not None else _v
      if _v is not None:
          self["font"] = _v
      _v = arg.pop("padding", None)
      _v = padding if padding is not None else _v
      if _v is not None:
          self["padding"] = _v
      _v = arg.pop("text", None)
      _v = text if text is not None else _v
      if _v is not None:
          self["text"] = _v
      _v = arg.pop("textangle", None)
      _v = textangle if textangle is not None else _v
      if _v is not None:
          self["textangle"] = _v
      _v = arg.pop("textposition", None)
      _v = textposition if textposition is not None else _v
      if _v is not None:
          self["textposition"] = _v
      _v = arg.pop("texttemplate", None)
      _v = texttemplate if texttemplate is not None else _v
      if _v is not None:
          self["texttemplate"] = _v
      _v = arg.pop("xanchor", None)
      _v = xanchor if xanchor is not None else _v
      if _v is not None:
          self["xanchor"] = _v
      _v = arg.pop("yanchor", None)
      _v = yanchor if yanchor is not None else _v
      if _v is not None:
          self["yanchor"] = _v
  
      # Process unknown kwargs
      # ----------------------
      self._process_kwargs(**dict(arg, **kwargs))
  
      # Reset skip_invalid
      # ------------------
      self._skip_invalid = False
  
imports: from plotly.basedatatypes import BaseLayoutHierarchyType
  import copy
label_desc: Use image node_id 18 to create a new Label object from inherited base classes: _BaseLayoutHierarchyType with example: obj = Label(arg, font, padding, text, textangle, textposition, texttemplate, xanchor, yanchor)