code: def _update_nodes(self, element, data, style):
      nodes = self.handles["nodes"]
      xs, ys = data["nodes"]
      nodes.set_offsets(np.column_stack([xs, ys]))
      if "node_facecolors" in style:
          nodes.set_facecolors(style["node_facecolors"])
      if "node_edgecolors" in style:
          nodes.set_edgecolors(style["node_edgecolors"])
      if "node_c" in style:
          nodes.set_array(style["node_c"])
      if "node_vmin" in style:
          nodes.set_clim((style["node_vmin"], style["node_vmax"]))
      if "node_norm" in style:
          nodes.norm = style["norm"]
      if "node_linewidth" in style:
          nodes.set_linewidths(style["node_linewidth"])
      if "node_s" in style:
          sizes = style["node_s"]
          if isscalar(sizes):
              nodes.set_sizes([sizes])
          else:
              nodes.set_sizes(sizes)
  
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 4 for calling the GraphPlot obj's underlying member method code with example usage: obj._update_nodes(element, data, style) without return types