code: def update_data(self, new_data_dict):
      print("Updating data...")
      self.image.set_data(new_data_dict["image"])
      self.line.set_data(new_data_dict["line"])
  
imports: import time
  from math import sin, pi
  import numpy
  from PyQt5 import QtWidgets, QtCore
  from vispy.scene import SceneCanvas, visuals
  from vispy.app import use_app, Timer
label_desc: Use image node_id 4 for calling the CanvasWrapper obj's underlying member method code with example usage: obj.update_data(new_data_dict) without return types