code: def generate_data(steady_count, noise_factor):
      t = ManeuveringTarget(x0=0, y0=0, v0=0.3, heading=0)
      xs = []
      ys = []
  
      for i in range(30):
          x, y = t.update()
          xs.append(x)
          ys.append(y)
  
      t.set_commanded_heading(310, 25)
      t.set_commanded_speed(1, 15)
  
      for i in range(steady_count):
          x, y = t.update()
          xs.append(x)
          ys.append(y)
  
      ns = NoisySensor(noise_factor=noise_factor)
      pos = array(list(zip(xs, ys)))
      zs = array([ns.sense(p) for p in pos])
      return pos, zs
  
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  from math import sin, cos, radians
  import numpy.random
  import numpy
  from numpy import array
  from numpy.random import randn
  import matplotlib.pyplot
  from filterpy.kalman import IMMEstimator, KalmanFilter
  from filterpy.common import Q_discrete_white_noise, Saver
label_desc: Use image node_id 4 for calling a global function with example usage: generate_data(steady_count, noise_factor) and returns: pos,  zs