CalliopeProjectSim/receiver.py

31 lines
933 B
Python

import send_test_data
import json
import matplotlib.pyplot as plt
import numpy as np
data_store = []
data_buffer = []
times = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
try:
for data in send_test_data.data_test_forever():
currentdata = json.loads(data)
data_store.append(currentdata["V"])
data_buffer = data_store[-20:]
# draw graph
fig, ax = plt.subplots()
if currentdata["V"] > 150:
ax.set_facecolor('red')
ax.plot(times[:len(data_buffer)], data_buffer, 'k')
else:
ax.plot(times[:len(data_buffer)], data_buffer)
ax.set_xlabel('Time [100 ms]')
ax.set_ylabel('Value randomness')
ax.set_title('Value randomness over time')
plt.xticks(np.arange(1, 21, 1))
plt.yticks(np.arange(0, 257, 32))
plt.show()
plt.close()
except KeyboardInterrupt:
exit(0)