def load_from_file(self, fname): try: self.I_meas, self.sigma = np.loadtxt( fname, skiprows=2, unpack=True) except (ValueError, TypeError): msg = QMessageBox() msg.setIcon(QMessageBox.Warning) msg.setText("Could not Load File") msg.setInformativeText( "The chosen file does not match the formatting.") msg.setWindowTitle("Warning") msg.resize(900, 300) msg.exec_() return with open(fname, 'r') as f: self.plane_meas = f.readline().split()[-1] if self.plane_meas == 'x': self.line_sigmax.set_xdata(self.I_meas) self.line_sigmax.set_ydata(np.array(self.sigma)*1e3) else: self.line_sigmay.set_xdata(self.I_meas) self.line_sigmay.set_ydata(np.array(self.sigma)*1e3) self.fig_sigma.figure.axes[0].set_xlim( [min(self.I_meas)*(1-DT*10), max(self.I_meas)*(1+DT*10)]) self.fig_sigma.figure.axes[0].set_ylim( [min(self.sigma)*(1-DT)*1e3, max(self.sigma)*(1+DT)*1e3]) self.fig_sigma.figure.canvas.draw()
def pb_analyse_data_clicked(self): if self.I_meas is None or self.sigma is None: msg = QMessageBox() msg.setIcon(QMessageBox.Warning) msg.setText("Could Perform Analysis") msg.setInformativeText( "No data in memory. Please make a measurement or load the data.") msg.setWindowTitle("Warning") msg.resize(900, 300) msg.exec_() return self._perform_analysis()
def pb_save_data_clicked(self): if self.I_meas is None or self.sigma is None: msg = QMessageBox() msg.setIcon(QMessageBox.Warning) msg.setText("Could not Save") msg.setInformativeText( "There are no data saved in Memory. Make a measurement First.") msg.setWindowTitle("Warning") msg.resize(900, 300) msg.exec_() return fname = QFileDialog.getSaveFileName( self, 'Save file', '', 'Text Files (*.txt *.dat)') if fname[0]: self.save_to_file(fname[0])