| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- from matplotlib import pyplot as plt
- import numpy as np
- def plot_data_from(filename):
- data = []
- with open(filename) as f:
- lines = f.read().splitlines()
- for line in lines:
- positions = []
- for p in line.split(";")[:-1]:
- positions.append(list(map(float, p.split(", "))))
- data.append(positions)
- number_of_joints = len(data[0])
- x = [[] for i in range(number_of_joints)]
- y = [[] for i in range(number_of_joints)]
- z = [[] for i in range(number_of_joints)]
- dx = [[] for i in range(number_of_joints)]
- dy = [[] for i in range(number_of_joints)]
- dz = [[] for i in range(number_of_joints)]
- for time in range(len(data)):
- for joint in range(len(data[time])):
- x[joint].append(data[time][joint][0])
- y[joint].append(data[time][joint][1])
- z[joint].append(data[time][joint][2])
- if (time > 0):
- dx[joint].append(x[joint][-1] - x[joint][-2])
- dy[joint].append(y[joint][-1] - y[joint][-2])
- dz[joint].append(z[joint][-1] - z[joint][-2])
- labels = ["nose","leftShoulder","rightShoulder","leftElbow","rightElbow","leftWrist","rightWrist","leftHip","rightHip","leftKnee","rightKnee","leftAnkle","rightAnkle"]
- NUM_COLORS = len(labels)
- cm = plt.get_cmap('tab20')
- fig = plt.figure("x")
- ax = fig.add_subplot(111)
- ax.set_prop_cycle(color=[cm(1.*i/NUM_COLORS) for i in range(NUM_COLORS)])
- for time, v in enumerate(x):
- plt.plot(v, label=labels[time])
- plt.legend(loc="center left")
- fig = plt.figure("y")
- ax = fig.add_subplot(111)
- ax.set_prop_cycle(color=[cm(1.*i/NUM_COLORS) for i in range(NUM_COLORS)])
- for time, v in enumerate(y):
- plt.plot(v, label=labels[time])
- plt.legend(loc="center left")
- fig = plt.figure("z")
- ax = fig.add_subplot(111)
- ax.set_prop_cycle(color=[cm(1.*i/NUM_COLORS) for i in range(NUM_COLORS)])
- for time, v in enumerate(z):
- plt.plot(v, label=labels[time])
- plt.legend(loc="center left")
- fig = plt.figure("dx")
- ax = fig.add_subplot(111)
- ax.set_prop_cycle(color=[cm(1.*i/NUM_COLORS) for i in range(NUM_COLORS)])
- for time, v in enumerate(dx):
- plt.plot(v, label=labels[time])
- plt.legend(loc="center left")
- fig = plt.figure("dy")
- ax = fig.add_subplot(111)
- ax.set_prop_cycle(color=[cm(1.*i/NUM_COLORS) for i in range(NUM_COLORS)])
- for time, v in enumerate(dy):
- plt.plot(v, label=labels[time])
- plt.legend(loc="center left")
- fig = plt.figure("dz")
- ax = fig.add_subplot(111)
- ax.set_prop_cycle(color=[cm(1.*i/NUM_COLORS) for i in range(NUM_COLORS)])
- for time, v in enumerate(dz):
- plt.plot(v, label=labels[time])
- plt.legend(loc="center left")
- plt.show()
- plot_data_from("meanFilteredData.csv")
|