code: def test_panzoom_link():
      vbs = [ViewBox(camera="panzoom") for _ in range(4)]
      cams = [vb.camera for vb in vbs]
  
      for cam in cams:
          cam.rect = (0, 0, 100, 100)
  
      cams[0].link(cams[1])
      cams[0].link(cams[2], axis="x")
      cams[0].link(cams[3], axis="y")
  
      cams[1].rect = (-20, -20, 130, 130)
  
      assert cams[0].rect.pos == (-20, -20) and cams[0].rect.size == (
          130,
          130,
      )
      assert cams[2].rect.pos == (-20, 0) and cams[2].rect.size == (
          130,
          100,
      )
      assert cams[3].rect.pos == (0, -20) and cams[3].rect.size == (
          100,
          130,
      )
  
imports: from vispy.scene.widgets import ViewBox
  from vispy.testing import run_tests_if_main
label_desc: Use image node_id 2 for calling a global function with example usage: test_panzoom_link() without return types