code: def get_data(self, element, ranges, style):
      with abbreviated_exception():
          style = self._apply_transforms(element, ranges, style)
  
      xidx, yidx = (1, 0) if self.invert_axes else (0, 1)
      pxs, pys = (element.nodes.dimension_values(i) for i in range(2))
      dims = element.nodes.dimensions()
      self._compute_styles(element, ranges, style)
  
      if "edge_vmin" in style:
          style["edge_clim"] = (
              style.pop("edge_vmin"),
              style.pop("edge_vmax"),
          )
      if "edge_c" in style:
          style["edge_array"] = style.pop("edge_c")
  
      if self.directed:
          xdim, ydim = element.nodes.kdims[:2]
          x_range = ranges[xdim.name]["combined"]
          y_range = ranges[ydim.name]["combined"]
          arrow_len = (
              np.hypot(y_range[1] - y_range[0], x_range[1] - x_range[0])
              * self.arrowhead_length
          )
          paths = get_directed_graph_paths(element, arrow_len)
      else:
          paths = element._split_edgepaths.split(
              datatype="array", dimensions=element.edgepaths.kdims
          )
  
      if self.invert_axes:
          paths = [p[:, ::-1] for p in paths]
      return (
          {"nodes": (pxs, pys), "edges": paths},
          style,
          {"dimensions": dims},
      )
  
imports: import warnings
  import numpy
  import param
  from matplotlib.collections import LineCollection, PolyCollection
  from ...core.data import Dataset
  from ...core.options import Cycle, abbreviated_exception
  from ...core.util import is_number, isscalar, search_indices, unique_array
  from ...util.transform import dim
  from ..mixins import ChordMixin, GraphMixin
  from ..util import get_directed_graph_paths, process_cmap
  from .element import ColorbarPlot
  from .util import filter_styles
label_desc: Use image node_id 2 for calling the GraphPlot obj's underlying member method code with example usage: obj.get_data(element, ranges, style) and returns: dict,  style,  dict