45 lines
1.0 KiB
Python
45 lines
1.0 KiB
Python
import json
|
|
import socket
|
|
import pandas as pd
|
|
import numpy as np
|
|
import sys
|
|
sys.path.append("./raspi-i2c")
|
|
import i2c2 as i2c
|
|
import matplotlib.pyplot as plt
|
|
|
|
timefrm = "%Y-%m-%d+%H:%M:%S"
|
|
|
|
def get_new_entry(setting={}):
|
|
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
s.connect(('localhost', 8888))
|
|
s.sendall(json.dumps(setting).encode())
|
|
|
|
response =json.loads(''.join(e.decode("utf-8") for e in s.recv(1024).split()[5:]))
|
|
s.close()
|
|
|
|
return response
|
|
|
|
|
|
if __name__ == '__main__':
|
|
pit = i2c.PIT()
|
|
try:
|
|
data = pd.read_csv("aggregate.csv")
|
|
except:
|
|
data = pd.DataFrame(pd.Series(get_new_entry())).T
|
|
print(data)
|
|
|
|
for i in range(100):
|
|
|
|
data = data.append(
|
|
pd.Series(get_new_entry()),
|
|
ignore_index=True)
|
|
|
|
print(i)
|
|
|
|
# whitespace would be removed when transmitted
|
|
data.systime = pd.to_datetime(data.systime, format=timefrm)
|
|
data.to_csv("aggregate.csv", date_format=timefrm, index=False)
|
|
|
|
data.plot('systime', 'pit_mon48v')
|
|
plt.savefig("aggregate.pdf")
|