code: def get_shape(
      kind="line",
      x=None,
      y=None,
      x0=None,
      y0=None,
      x1=None,
      y1=None,
      span=0,
      color="red",
      dash="solid",
      width=1,
      fillcolor=None,
      fill=False,
      opacity=1,
      xref="x",
      yref="y",
  ):
      """
      Returns a plotly shape
  
      Parameters:
      -----------
              kind : string
                      Shape kind
                              line
                              rect
                              circle
              x : float
                      x values for the shape.
                      This assumes x0=x1
              x0 : float
                      x0 value for the shape
              x1 : float
                      x1 value for the shape
              y : float
                      y values for the shape.
                      This assumes y0=y1
              y0 : float
                      y0 value for the shape
              y1 : float
                      y1 value for the shape
              color : string
                      color for shape line
              dash : string
                      line style
                              solid
                              dash
                              dashdot
                              dot
              width : int
                      line width
              fillcolor : string
                      shape fill color
              fill : bool
                      If True then fill shape
                      If not fillcolor then the
                      line color will be used
              opacity : float [0,1]
                      opacity of the fill
              xref : string
                      Sets the x coordinate system
                      which this object refers to
                              'x'
                              'paper'
                              'x2' etc
              yref : string
                      Sets the y coordinate system
                      which this object refers to
                              'y'
                              'paper'
                              'y2' etc
      """
      if x1 is None:
          if x0 is None:
              if x is None:
                  xref = "paper"
                  x0 = 0
                  x1 = 1
              else:
                  x0 = x1 = x
          else:
              x1 = x0
      else:
          x
      if y1 is None:
          if y0 is None:
              if y is None:
                  yref = "paper"
                  y0 = 0
                  y1 = 1
              else:
                  y0 = y1 = y
          else:
              y1 = y0
  
      shape = {
          "x0": x0,
          "y0": y0,
          "x1": x1,
          "y1": y1,
          "line": {
              "color": normalize(color),
              "width": width,
              "dash": dash,
          },
          "xref": xref,
          "yref": yref,
      }
  
      if kind == "line":
          shape["type"] = "line"
  
      elif kind == "circle":
          shape["type"] = "circle"
  
      elif kind == "rect":
          shape["type"] = "rect"
      else:
          raise Exception(
              "Invalid or unkown shape type : {0}".format(kind)
          )
  
      if (fill or fillcolor) and kind != "line":
          fillcolor = color if not fillcolor else fillcolor
          fillcolor = to_rgba(normalize(fillcolor), opacity)
          shape["fillcolor"] = fillcolor
  
      return shape
  
imports: import copy
  import numpy
  import pandas
  import plotly.offline
  import plotly.figure_factory
  from plotly.graph_objs import Figure, Scatter, Line
  from plotly.subplots import make_subplots
  from .None import themes
  from .None import auth, ta
  from .colors import normalize, to_rgba
  from .utils import check_kwargs, deep_update, dict_replace_keyword, kwargs_from_keyword, merge_dict, is_list, make_list
label_desc: Use image node_id 24 for calling a global function with example usage: get_shape(kind, x, y, x0, y0, x1, y1, span, color, dash, width, fillcolor, fill, opacity, xref, yref) and returns: shape