docstr: For `type` "path" - a valid SVG path with the pixel values
  replaced by data values in `xsizemode`/`ysizemode` being
  "scaled" and taken unmodified as pixels relative to `xanchor`
  and `yanchor` in case of "pixel" size mode. There are a few
  restrictions / quirks only absolute instructions, not relative.
  So the allowed segments are: M, L, H, V, Q, C, T, S, and Z arcs
  (A) are not allowed because radius rx and ry are relative. In
  the future we could consider supporting relative commands, but
  we would have to decide on how to handle date and log axes.
  Note that even as is, Q and C Bezier paths that are smooth on
  linear axes may not be smooth on log, and vice versa. no
  chained "polybezier" commands - specify the segment type for
  each one. On category axes, values are numbers scaled to the
  serial numbers of categories because using the categories
  themselves there would be no way to describe fractional
  positions On data axes: because space and T are both normal
  components of path strings, we can't use either to separate
  date from time parts. Therefore we'll use underscore for this
  purpose: 2015-02-21_13:45:56.789
  
  The 'path' property is a string and must be specified as:
    - A string
    - A number that will be converted to a string
  
  Returns
  -------
  str
code: def path(self):
      """
      For `type` "path" - a valid SVG path with the pixel values
      replaced by data values in `xsizemode`/`ysizemode` being
      "scaled" and taken unmodified as pixels relative to `xanchor`
      and `yanchor` in case of "pixel" size mode. There are a few
      restrictions / quirks only absolute instructions, not relative.
      So the allowed segments are: M, L, H, V, Q, C, T, S, and Z arcs
      (A) are not allowed because radius rx and ry are relative. In
      the future we could consider supporting relative commands, but
      we would have to decide on how to handle date and log axes.
      Note that even as is, Q and C Bezier paths that are smooth on
      linear axes may not be smooth on log, and vice versa. no
      chained "polybezier" commands - specify the segment type for
      each one. On category axes, values are numbers scaled to the
      serial numbers of categories because using the categories
      themselves there would be no way to describe fractional
      positions On data axes: because space and T are both normal
      components of path strings, we can't use either to separate
      date from time parts. Therefore we'll use underscore for this
      purpose: 2015-02-21_13:45:56.789
  
      The 'path' property is a string and must be specified as:
        - A string
        - A number that will be converted to a string
  
      Returns
      -------
      str
      """
      return self["path"]
  
imports: from plotly.basedatatypes import BaseLayoutHierarchyType
  import copy
label_desc: Use image node_id 27 for calling the Shape obj's underlying member method code with example usage: obj.path() and returns: self