import numpy as np
import tdsmParserMultis
import os
import matplotlib.pyplot as plt
from nptdms import TdmsFile

dir = '../MULTIS_trials/'
tdms_files = os.listdir(dir)
# # print tdms_files
# data = tdsmParserMultis.parseTDMSfile(dir + tdms_files[3])
# Load = np.array(data[u'State.6-DOF Load'][u'6-DOF Load Fz'])
# Opto = np.array(data[u'Sensor.US Probe'][u'US Probe_smart_02.x'])
# # OptoTime = np.array(data[u'Time'][u'Time (ms)'])
# tdmsFile = TdmsFile(dir + tdms_files[3])
# group = tdmsFile.groups()[-1]
# time = tdmsFile.group_channels(group)[0].data

tdmsfilename = dir + tdms_files[0]
tdmsData = tdsmParserMultis.parseTDMSfile(tdmsfilename)
tdmsFile = TdmsFile(tdmsfilename)

Load = np.array(tdmsData[u'State.Scalpel Load'][u'Scalpel Load Fx'])
Opto = np.array(tdmsData[u'Sensor.Scalpel Pos'][u'Scalpel Pos_scalpel multis.x'])

# Load = np.array(tdmsData[u'State.Retractor Load'][u'Retractor Load Fx'])
# Opto = np.array(tdmsData[u'Sensor.Retractor Pos'][u'Retractor Pos_scalpel multis.x'])

time = np.array(tdmsData[u'Time'][u'Time'])
# group = tdmsFile.groups()[-1]
# time = tdmsFile.group_channels(group)[0].data

Opto = Opto-Opto[0]

# print OptoTime
fig, (ax1) = plt.subplots(nrows=1, ncols=1, figsize=(18, 9.5), dpi=100)
# ax1 = plt.subplot2grid((18, 4), (8, 0), rowspan=1, colspan=1)
# ax2 = plt.subplot2grid((18, 4), (13, 4), rowspan=1, colspan=1)
ax1.plot(Load, label="$Load$", color='blue')
ax1.plot(time, Opto, label="$Opto$", color='red')
ax1.set_xlim(0, 10000)

ax1.plot(time[1], -1, color='green', marker='o')

# ax2.set_xlim(0, 8000)
ax1.set_xlabel("time(ms)")
leg1 = ax1.legend(loc='upper right', prop={'size': 10}, borderpad=0.2, handlelength=3)
# leg2 = ax2.legend(loc='upper right', prop={'size': 10}, borderpad=0.2, handlelength=3)
plt.show()
