code: def setUp(self):
      super().setUp()
  
      N = 8
      self.nodes = circular_layout(np.arange(N, dtype=np.int32))
      self.source = np.arange(N, dtype=np.int32)
      self.target = np.zeros(N, dtype=np.int32)
      self.weights = np.random.rand(N)
      self.graph = Graph(((self.source, self.target),))
      self.node_info = Dataset(
          ["Output"] + ["Input"] * (N - 1), vdims=["Label"]
      )
      self.node_info2 = Dataset(self.weights, vdims="Weight")
      self.graph2 = Graph(((self.source, self.target), self.node_info))
      self.graph3 = Graph(((self.source, self.target), self.node_info2))
      self.graph4 = Graph(
          ((self.source, self.target, self.weights),), vdims="Weight"
      )
  
imports: import numpy
  from bokeh.models import EdgesAndLinkedNodes, NodesAndLinkedEdges, NodesOnly, Patches
  from bokeh.models.mappers import CategoricalColorMapper, LinearColorMapper
  from holoviews.core.data import Dataset
  from holoviews.element import Chord, Graph, Nodes, TriMesh, VLine, circular_layout
  from holoviews.plotting.bokeh.util import property_to_dict
  from holoviews.util.transform import dim
  from .test_plot import TestBokehPlot, bokeh_renderer
label_desc: Use image node_id 1 for calling the TestBokehGraphPlot obj's underlying member method code with example usage: obj.setUp() without return types