code: def __init__(self):
      scene.SceneCanvas.__init__(self, keys=None)
      self.size = 800, 600
      self.unfreeze()
      self.view = self.central_widget.add_view()
      self.radius = 2.0
      self.view.camera = "turntable"
      mesh = create_sphere(20, 20, radius=self.radius)
      vertices = mesh.get_vertices()
      tris = mesh.get_faces()
  
      cl = np.linspace(-self.radius, self.radius, 6 + 2)[1:-1]
  
      self.iso = scene.visuals.Isoline(
          vertices=vertices,
          tris=tris,
          data=vertices[:, 2],
          levels=cl,
          color_lev="autumn",
          parent=self.view.scene,
      )
      self.freeze()
  
      # Add a 3D axis to keep us oriented
      scene.visuals.XYZAxis(parent=self.view.scene)
  
file_path: vispy/examples/scene/isocurve_for_trisurface_qt.py
imports: import numpy
  from vispy import scene, app
  from vispy.geometry.generation import create_sphere
  from vispy.color.colormap import get_colormaps
label_desc: Use image node_id 1 to create a new Canvas object from inherited base classes: scene with example: obj = Canvas()