Data analysis tool
This commit is contained in:
52
tools/analysis.py
Executable file
52
tools/analysis.py
Executable file
@@ -0,0 +1,52 @@
|
|||||||
|
import matplotlib.pyplot as plt
|
||||||
|
import numpy as np
|
||||||
|
|
||||||
|
fsend = open("send.info")
|
||||||
|
frecv = open("recv.info")
|
||||||
|
|
||||||
|
send_lines = fsend.readlines()[:-1]
|
||||||
|
recv_lines = frecv.readlines()[:-1]
|
||||||
|
|
||||||
|
send_infos = [line.split(" ") for line in send_lines]
|
||||||
|
recv_infos = [line.split(" ") for line in recv_lines]
|
||||||
|
|
||||||
|
send_times = [float(info[0]) for info in send_infos]
|
||||||
|
recv_times = [float(info[0]) for info in recv_infos]
|
||||||
|
|
||||||
|
send_yaw = [float(info[1]) for info in send_infos]
|
||||||
|
TargetAngle= [float(info[1]) for info in recv_infos]
|
||||||
|
RealAngle = [float(info[2]) for info in recv_infos]
|
||||||
|
|
||||||
|
length = min(len(send_times), len(recv_times))
|
||||||
|
|
||||||
|
send_times = send_times[:length]
|
||||||
|
recv_times = recv_times[:length]
|
||||||
|
send_yaw = send_yaw[:length]
|
||||||
|
TargetAngle= TargetAngle[:length]
|
||||||
|
RealAngle = RealAngle[:length]
|
||||||
|
|
||||||
|
time_base = min(send_times[0], recv_times[0])
|
||||||
|
|
||||||
|
send_times = np.array(send_times) - time_base
|
||||||
|
recv_times = np.array(recv_times) - time_base
|
||||||
|
|
||||||
|
TargetAngle = TargetAngle[:300]
|
||||||
|
RealAngle = RealAngle[:300]
|
||||||
|
send_times = send_times[:300]
|
||||||
|
recv_times = recv_times[:300]
|
||||||
|
send_yaw = send_yaw[:300]
|
||||||
|
|
||||||
|
TargetAngle = np.array(TargetAngle)
|
||||||
|
TargetAngle -= TargetAngle.mean()
|
||||||
|
RealAngle = np.array(RealAngle)
|
||||||
|
RealAngle -= RealAngle.mean()
|
||||||
|
|
||||||
|
plt.plot(send_times, send_yaw, label="send-yaw")
|
||||||
|
plt.plot(recv_times, TargetAngle,label="TargetAngle")
|
||||||
|
plt.plot(recv_times, RealAngle, label="RealAngle")
|
||||||
|
plt.scatter(send_times, send_yaw, label="send-yaw")
|
||||||
|
plt.scatter(recv_times, TargetAngle,label="TargetAngle")
|
||||||
|
plt.scatter(recv_times, RealAngle, label="RealAngle")
|
||||||
|
plt.legend()
|
||||||
|
plt.show()
|
||||||
|
|
||||||
Reference in New Issue
Block a user