Kinetic now OK first Value is now OK

This commit is contained in:
jens 2020-12-11 23:38:18 +01:00
parent e0eea56ff7
commit 6b585873ca
3 changed files with 3732 additions and 3712 deletions

View File

@ -38,6 +38,7 @@ import CCDfiles
#jfs
from JFSphoto import *
import time
class buildpanel(tk.Frame):
@ -252,6 +253,7 @@ class buildpanel(tk.Frame):
def darkline():
if (self.jf.do_save_darkline(config.rxData16)==1):
self.jfsdark_check.config(state=tk.NORMAL)
def baseline():
if (self.jf.get_darkline_checked() == 1):
base = self.jf.darkData16-config.rxData16
@ -268,16 +270,22 @@ class buildpanel(tk.Frame):
self.jfsbase_transmission.config(state=tk.NORMAL)
self.jfsbase_absorption.config(state=tk.NORMAL)
def start_kinetics():
if self.device_status.get() == "Device exist":
self.bcollect.invoke()
self.jf.start_kinetic()
kinetics()
else:
messagebox.showerror("By the great otter!"," Sorry No Device")
def messure():
kin_time.set(kin_time.get()+1)
self.bcollect.invoke()
self.jf.add_kinetic(str(kin_delta.get()*kin_time.get()))
kin_repeats.set(kin_repeats.get()-1)
kinetics()
def kinetics():
if self.device_status.get() == "Device exist":
kin_repeats.set(kin_repeats.get()-1)
if kin_repeats.get() > 0 :
self.after(kin_delta.get()*1000,messure)
else:
@ -286,10 +294,8 @@ class buildpanel(tk.Frame):
self.jf.df['baseline']=self.jf.baseData16
self.jf.df['darkline']=self.jf.darkData16
self.jf.df['nmscale']=self.jf.nmData16
self.jf.save_kinetics("kini.dat")
print(self.jf.df.head())
else:
messagebox.showerror("By the great otter!"," Sorry No Device")
self.jf.do_math()
self.jfstitel = tk.Label(self, text=' Photometer ',fg="#6A9662")
@ -318,7 +324,7 @@ class buildpanel(tk.Frame):
#### LabelFrame
self.jfslf1 = tk.LabelFrame(self,text= 'kinetic')
self.jfslf1.grid(row=plt_row,column=4,sticky='e',padx=4)
self.jfskinb = tk.Button(self.jfslf1,text='start Kinetic',fg="blue", command=kinetics)
self.jfskinb = tk.Button(self.jfslf1,text='start Kinetic',fg="blue", command=start_kinetics)
self.jfskinb.grid(row=2,column=1,sticky='e')
self.jfskinl1 = tk.Label(self.jfslf1,text='Interval [s]',fg="blue")
self.jfskinl1.grid(row=0,column=0,sticky='w')

View File

@ -15,6 +15,7 @@ from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg,NavigationToolba
from matplotlib.figure import Figure
from numpy import arange, sin, pi,cos
import fnmatch
import time
####################################### object
class Jfsphoto (object):
@ -195,7 +196,17 @@ class Jfsphoto (object):
def add_kinetic(self,name):
self.df[str(name)]=config.rxData16
print(name)
toc = time.perf_counter()
print(f"{name} time {toc :0.4f} sec")
def start_kinetic(self):
self.col_list = list(self.df.columns.values.tolist())
##### delete remaining _trans and _abs
##filtered = fnmatch.filter(self.col_list,'*_*')
self.df.drop(self.col_list,axis=1,inplace=True)
toc = time.perf_counter()
print(f"start time {toc :0.4f} sec")
def save_pandas(self):
filename = filedialog.asksaveasfilename(defaultextension=".csv", title="Save file as")
@ -297,16 +308,17 @@ class Jfsphoto (object):
stati = [("Raw",1),("Raw + Baseline",2),("Transmission",4),("Absorbanz",3)]
win = tk.Toplevel()
self.center = tk.Frame(win, bg='gray2', width=50, height=40, padx=3, pady=3)
self.center = tk.Frame(win, bg='gray2', width=800, height=400, padx=3, pady=3)
self.center.grid_rowconfigure(0, weight=1)
self.center.grid_columnconfigure(1, weight=1)
self.center.grid(row=1, sticky="nsew")
self.ctr_mid = tk.Frame(self.center, width=250, height=250, padx=3, pady=3)
self.ctr_right = tk.Frame(self.center, width=200, height=250, padx=3, pady=3)
self.ctr_mid = tk.Frame(self.center, width=250, height=300, padx=3, pady=3)
self.ctr_right = tk.Frame(self.center, width=200, height=300, padx=3, pady=3)
self.ctr_mid.grid(row=0, column=0, sticky="nsew")
self.ctr_right.grid(row=0, column=1, sticky="ns")
self.fig = plt.Figure(figsize=(8,4),dpi=100)
self.fig = plt.Figure(figsize=(8,4),dpi=120)
plt.rc('legend',fontsize=8)
self.ax1 = self.fig.add_subplot(111)
@ -334,6 +346,7 @@ class Jfsphoto (object):
self.kbtn1 = tk.Button(master=self.ctr_right,text="show",command=self.show_selected)
self.kbtn1.grid(row=14,column=0,sticky="w")
if self.calculate() :
self.show_first_look()
else:
@ -341,6 +354,7 @@ class Jfsphoto (object):
s = sin(2*pi*t)
self.ax1.plot(t, s, linewidth=0.6)
win.focus_set()
win.grab_set()
win.wait_window()

7390
kini.dat

File diff suppressed because it is too large Load Diff