RANGE_1 = (0.0, 80.0) SETPOINTS_2 = (1.0, 2.0, 3.0) motor.setSpeed(100.0) #set_preference(Preference.ENABLED_PLOTS, [sin,]) set_preference(Preference.PLOT_TYPES, {sin:1,sinp:1}) scan = ManualScan([motor.getName(), out.getName()], [sin.getName(), sinp.getName()] , [-1, SETPOINTS_2[0]], [-1, SETPOINTS_2[-1]], [-1, len(SETPOINTS_2)-1]) #scan = ManualScan([motor.getName(), out.getName()], [sin.getName(), sinp.getName()] , [RANGE_1[0], SETPOINTS_2[0]], [RANGE_1[-1], SETPOINTS_2[-1]], [int(RANGE_1[1]-RANGE_1[0]), len(SETPOINTS_2)-1]) scan.start() for setpoint1 in frange(RANGE_1[0], RANGE_1[1], 1.0, True): motor.move(setpoint1) for setpoint2 in SETPOINTS_2: out.put(setpoint2) scan.append ([setpoint1, setpoint2], [motor.read(), out.read()], [sin.read(), sinp.read()]) scan.end()