code: def get_data(self, element, ranges, style):
      offset = style.pop("label_offset", 1.05)
      data, mapping, style = super().get_data(element, ranges, style)
      angles = element._angles
      arcs = defaultdict(list)
      for i in range(len(element.nodes)):
          start, end = angles[i : i + 2]
          vals = np.linspace(start, end, 20)
          xs, ys = np.cos(vals), np.sin(vals)
          arcs["arc_xs"].append(xs)
          arcs["arc_ys"].append(ys)
      data["scatter_1"].update(arcs)
      data["multi_line_2"] = data["scatter_1"]
      mapping["multi_line_2"] = {
          "xs": "arc_xs",
          "ys": "arc_ys",
          "line_width": 10,
      }
  
      label_dim = element.nodes.get_dimension(self.label_index)
      labels = self.labels
      if label_dim and labels:
          self.param.warning(
              "Cannot declare style mapping for 'labels' option "
              "and declare a label_index; ignoring the label_index."
          )
      elif label_dim:
          labels = label_dim
      elif isinstance(labels, str):
          labels = element.nodes.get_dimension(labels)
  
      if labels is None:
          return data, mapping, style
  
      nodes = element.nodes
      if element.vdims:
          values = element.dimension_values(element.vdims[0])
          if values.dtype.kind in "uif":
              edges = Dataset(element)[values > 0]
              nodes = list(
                  np.unique(
                      [edges.dimension_values(i) for i in range(2)]
                  )
              )
              nodes = element.nodes.select(
                  **{element.nodes.kdims[2].name: nodes}
              )
      xs, ys = (nodes.dimension_values(i) * offset for i in range(2))
      if isinstance(labels, dim):
          text = labels.apply(element, flat=True)
      else:
          text = element.nodes.dimension_values(labels)
          text = [labels.pprint_value(v) for v in text]
      angles = np.arctan2(ys, xs)
      data["text_1"] = dict(
          x=xs, y=ys, text=[str(l) for l in text], angle=angles
      )
      mapping["text_1"] = dict(
          text="text",
          x="x",
          y="y",
          angle="angle",
          text_baseline="middle",
      )
      return data, mapping, style
  
imports: from collections import defaultdict
  import numpy
  import param
  from bokeh.models import Bezier, ColumnDataSource, EdgesAndLinkedNodes, NodesAndLinkedEdges, NodesOnly, Patches, StaticLayoutProvider
  from ...core.data import Dataset
  from ...core.options import Cycle, abbreviated_exception
  from ...core.util import dimension_sanitizer, unique_array
  from ...util.transform import dim
  from ..mixins import ChordMixin, GraphMixin
  from ..util import get_directed_graph_paths, process_cmap
  from .chart import ColorbarPlot, PointPlot
  from .element import CompositeElementPlot, LegendPlot
  from .styles import base_properties, fill_properties, line_properties, rgba_tuple, text_properties
label_desc: Use image node_id 4 for calling the ChordPlot obj's underlying member method code with example usage: obj.get_data(element, ranges, style) and returns: data,  mapping,  style, data,  mapping,  style