From dafa79fbb4d393988777ddbed6db10bd838aaf45 Mon Sep 17 00:00:00 2001 From: jens Date: Sun, 29 Nov 2020 17:09:30 +0100 Subject: [PATCH] baseline transmision absorption implementet --- CCDpanelsetup.py | 18 +++++++++++++----- JFSphoto.py | 3 +++ 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/CCDpanelsetup.py b/CCDpanelsetup.py index e29cea0..5eb8c20 100644 --- a/CCDpanelsetup.py +++ b/CCDpanelsetup.py @@ -236,6 +236,8 @@ class buildpanel(tk.Frame): base = self.jf.darkData16-config.rxData16 if (self.jf.do_save_baseline(base)==1): self.jfsbase_check.config(state=tk.NORMAL) + self.jfsbase_transmission.config(state=tk.NORMAL) + self.jfsbase_absorption.config(state=tk.NORMAL) self.jfstitel = tk.Label(self, text=' Photometer ') #self.jfstitel.config(font=("Courier",0)) @@ -252,6 +254,11 @@ class buildpanel(tk.Frame): self.jfsbase.grid(row=15,column=4) self.jfsbase_check = tk.Checkbutton(self,text="Baseline on/off",variable=self.jf.baseline_checked,state=tk.DISABLED,command=lambda CCDplot=CCDplot: self.updateplot(CCDplot)) self.jfsbase_check.grid(row=16,column=4) + self.jfsbase_absorption = tk.Radiobutton(self,text="Absorption",variable=self.jf.abs_trans,value=0,state=tk.DISABLED,command=lambda CCDplot=CCDplot: self.updateplot(CCDplot)) + self.jfsbase_absorption.grid(row=17,column=4) + self.jfsbase_transmission = tk.Radiobutton(self,text="Transmision",variable=self.jf.abs_trans,value=1,state=tk.DISABLED,command=lambda CCDplot=CCDplot: self.updateplot(CCDplot)) + self.jfsbase_transmission.grid(row=18,column=4) + ### Callbacks for traces, buttons, etc ### def callback(self): self.bopen.config(state=tk.DISABLED) @@ -337,12 +344,13 @@ class buildpanel(tk.Frame): config.pltData16[i] = 1 else: config.pltData16[i] = (config.pltData16[i] / config.pltBaseData16[i]) - config.pltData16 = 100*config.pltData16 + if (self.jf.abs_trans.get()==1): + config.pltData16 = np.log10(config.pltData16)*-1 - up = np.max(config.pltData16) + 50 + up = np.max(config.pltData16) if (self.jf.get_nm_checked()==1): CCDplot.a.plot(self.jf.get_nm_scale(),config.pltData16) - CCDplot.a.axis([self.jf.nm_left,self.jf.nm_right,-10,up]) + CCDplot.a.axis([self.jf.nm_left,self.jf.nm_right,0,up]) CCDplot.a.set_xlim([self.jf.nm_left+self.jf.baseline_start*self.jf.nm_step, self.jf.nm_left+self.jf.baseline_end*self.jf.nm_step]) CCDplot.a.set_xlabel(" [nm] ") else: @@ -369,10 +377,10 @@ class buildpanel(tk.Frame): #plot intensities if (config.datainvert == 1): ## make max visible - up = np.max(config.pltData16) + 50 + up = np.max(config.pltData16) if (self.jf.get_nm_checked()==1): CCDplot.a.plot(self.jf.get_nm_scale(),config.pltData16) - CCDplot.a.axis([self.jf.nm_left,self.jf.nm_right,-10,up]) + CCDplot.a.axis([self.jf.nm_left,self.jf.nm_right,0,up]) CCDplot.a.set_xlabel(" [nm] ") else: CCDplot.a.plot(config.pltData16) diff --git a/JFSphoto.py b/JFSphoto.py index fa17f03..cdfae3d 100644 --- a/JFSphoto.py +++ b/JFSphoto.py @@ -35,6 +35,9 @@ class Jfsphoto (object): self.baseline_checked.set(0) self.baseline_start=0 self.baseline_end=0 + self.abs_trans= tk.IntVar() + ########## set to transition + self.abs_trans.set(1) def do_calibrate(self): win = tk.Toplevel()