From efe219fa6035c86da7961421ad5504063cee8876 Mon Sep 17 00:00:00 2001 From: Berk Silemek <berk.silemek@gmail.com> Date: Mon, 14 Nov 2022 14:36:19 +0000 Subject: [PATCH] The script for plotting the received temperature values --- Software/Keithley/Plot_Keithley_v3.py | 62 +++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 Software/Keithley/Plot_Keithley_v3.py diff --git a/Software/Keithley/Plot_Keithley_v3.py b/Software/Keithley/Plot_Keithley_v3.py new file mode 100644 index 0000000..f002c4d --- /dev/null +++ b/Software/Keithley/Plot_Keithley_v3.py @@ -0,0 +1,62 @@ +import time +import matplotlib +matplotlib.use('TkAgg') +import matplotlib.pyplot as plt +from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg +from matplotlib.figure import Figure +import Tkinter as tk +import ttk +import sys +import math +from datetime import datetime +import numpy as np +import re + + +hl, = plt.plot([], []) +plt.rcParams.update({'font.size': 32}) +plt.rcParams.update({'font.weight' : 'bold'}) +plt.rcParams['lines.linewidth'] = 2 +plt.xlabel("Time (s)") +plt.ylabel("Temperature "+ "("+ r'$\Delta$'+r'$\degree$'+"C"+")") +plt.grid(True) + +file_object = open("log.txt", "a") + +rate = float(3) +counter = 1 +plotData = float(0.0) +now = datetime.today() +frmt = "%H:%M:%S.%f" +def update_line(hl, new_data, x_data): + hl.set_xdata(x_data) + hl.set_ydata(new_data) + hl.axes.relim() + hl.axes.autoscale_view() + ax = plt.gca() + ax.spines['right'].set_visible(False) + ax.spines['top'].set_visible(False) + ax.yaxis.set_ticks_position('left') + ax.xaxis.set_ticks_position('bottom') + plt.pause(0.0001) + + +start = 0.0 + + +while 1: + file_object = open("log.txt", "r") + data = file_object.readlines() + file_object.close() + temperature = np.array(np.zeros(len(data)-5)) + timeX = np.array(np.zeros(len(data)-5)) + timezero = datetime.strptime(((re.split("(\s+)",data[0]))[2]),frmt) + for i in range(len(data)-5): + raw = re.split("(\s+)",data[i]) + timeX[i] = (datetime.strptime(raw[2],frmt) - timezero).total_seconds() + temperature[i] = raw[4] + update_line(hl, temperature,timeX) + time.sleep(rate) + + + -- GitLab