def prikazi_grafove(self, rezultat, slopeData): """ Metoda za crtanje grafova, ulazni parametri su frejm rezultata umjeravanja i mapa sa podacima za 'slope', 'offset', 'prilagodbaA', 'prilagodbaB' """ self.crefCanvas.clear_graf() self.mjerenjaCanvas.clear_graf() #dohvati rezultat umjeravanja: testLinearnosti = self.datastore.get_checkLinearnost() tocke = self.datastore.get_tocke(self.plin) frejm = self.datastore.tabData[self.plin].get_frejm() if self.plin in frejm.columns: x = list(rezultat.loc[:, 'cref']) y = list(rezultat.loc[:, 'c']) if testLinearnosti: slope = slopeData['slope'] offset = slopeData['offset'] self.crefCanvas.set_slope_offset(slope, offset) else: self.crefCanvas.set_slope_offset(None, None) self.crefCanvas.crtaj(x, y) frejm = frejm.copy() frejm = frejm.loc[:, self.plin] if testLinearnosti: self.mjerenjaCanvas.crtaj(frejm, tocke) else: z, s = pomocni.pronadji_zero_span_tocke(tocke) zs = [z, s] self.mjerenjaCanvas.crtaj(frejm, zs)
def postavi_predlozene_pragove(self, x): """ Metoda postavlja pragove iz trenutnih podataka iz funnkcije prilagodbe prema formuli: rise = (span * 0.9 - B) / A fall = (span * 0.1 - B) / A rise : gornji prag fall : donji prag span : trenutni opseg mjerenja B : prilagodbaB (odsjecak na y osi pravca kroz tocku zero i tocku span) A : prilagodbaA (nagib pravca kroz tocku zero i tocku span) """ try: rezultatiUmjeravanja = self.datastore.tabData[self.naziv].get_rezultat() prilagodbaA = rezultatiUmjeravanja['prilagodba']['prilagodbaA'] prilagodbaB = rezultatiUmjeravanja['prilagodba']['prilagodbaB'] #opseg spana... tocke = self.datastore.tabData[self.naziv].get_tocke() zeroTocka, spanTocka = pomocni.pronadji_zero_span_tocke(tocke) spanOpseg = self.datastore.get_izabraniOpseg() * spanTocka.get_crefFaktor() print(spanOpseg) r = (spanOpseg*0.9 - prilagodbaB) / prilagodbaA f = (spanOpseg*0.1 - prilagodbaB) / prilagodbaA self.doubleSpinBoxHigh.setValue(r) self.doubleSpinBoxLow.setValue(f) except Exception as err: logging.error(str(err), exc_info=True)