import time import numpy as np from matplotlib.pyplot import figure, clf, plot, xlabel, ylabel, xlim, ylim, title, grid, axes, show, subplot from tempSensorSim import TempSensorSim class TempLogger(): def __init__(self, sensor): self.sensor = sensor self.temps = np.empty(0) self.times = np.empty(0) self.count = 0 def run(self, dt, duration): for t in range(0, duration): temp = self.sensor.temperature() print ("Current temperature is {:0.2f} °C".format(temp)) self.times = np.append(self.times, self.count) self.temps = np.append(self.temps, temp) self.count += 1 time.sleep(dt) return self.result() def result(self): return self.times, self.temps if __name__ == '__main__': sensor = TempSensorSim("FakeTemp") logger = TempLogger(sensor) result = logger.run(1, 10) figure(1) plot(result[0]/60, result[1], 'b-', linewidth=1) ylabel('°C/min') xlabel('t/min') show() print("End of program")