def updateColprofile(self):
     cp = self.calculate_col_profile()
     self.cp_data = cp
     self.cp_curve.setData(y=cp)
     if self.gaussian:
         #y_fit = gaussian_fit(self.cols_array, cp)
         if not self.fit_roi_only:
             y_fit = gaussian_fit(self.cols_array, cp)
             if not y_fit[1]:  # not estimate
                 self.cp_gaussian.setPen(qualitative_colors[0])
             else:
                 self.cp_gaussian.setPen(grey)
             self.cp_gaussian.setData(y=y_fit[0])
         else:
             x0 = self.x_int_lims[0]
             x1 = self.x_int_lims[1]
             y_fit = gaussian_fit(self.cols_array[x0:x1], cp[x0:x1])
             if not y_fit[1]:  # not estimate
                 self.cp_gaussian.setPen(qualitative_colors[0])
             else:
                 self.cp_gaussian.setPen(grey)
             self.cp_gaussian.setData(x=self.cols_array[x0:x1], y=y_fit[0])
         #self.cp_gaussian.setData(y=y_fit[0])
         self.scwin.feedData(np.array([y_fit[2][0], y_fit[2][1]]),
                             data_slice=[0, 2],
                             count=False)
 def updateRowprofile(self):
     rp = self.calculate_row_profile()
     self.rp_data = rp
     self.rp_curve.setData(x=rp, y=self.rows_array)
     if self.gaussian:
         #x_fit = gaussian_fit(self.rows_array, rp)
         #print("Row Mean: ", x_fit[2][0])
         if not self.fit_roi_only:
             x_fit = gaussian_fit(self.rows_array, rp)
             if not x_fit[1]:  # not estimate
                 self.rp_gaussian.setPen(qualitative_colors[0])
             else:
                 self.rp_gaussian.setPen(grey)
             self.rp_gaussian.setData(x=x_fit[0], y=self.rows_array)
         else:
             y0 = self.y_int_lims[0]
             y1 = self.y_int_lims[1]
             x_fit = gaussian_fit(self.rows_array[y0:y1], rp[y0:y1])
             if not x_fit[1]:  # not estimate
                 self.rp_gaussian.setPen(qualitative_colors[0])
             else:
                 self.rp_gaussian.setPen(grey)
             self.rp_gaussian.setData(x=x_fit[0], y=self.rows_array[y0:y1])
         #self.rp_gaussian.setData(x=x_fit[0], y=self.rows_array)
         self.scwin.feedData(np.array([x_fit[2][0], x_fit[2][1]]),
                             data_slice=[2, 4])
    def toggle_gaussian(self):
        self.gaussian = not self.gaussian
        if self.gaussian:
            cp = self.calculate_col_profile()
            if not self.fit_roi_only:
                y_fit = gaussian_fit(self.cols_array, cp)
                cp_gaussian = self.cp_plot.plot(x=self.cols_array, y=y_fit[0])
            else:
                x0 = self.x_int_lims[0]
                x1 = self.x_int_lims[1]
                y_fit = gaussian_fit(self.cols_array[x0:x1], cp[x0:x1])
                cp_gaussian = self.cp_plot.plot(x=self.cols_array[x0:x1],
                                                y=y_fit[0])
            self.cp_gaussian = cp_gaussian

            rp = self.calculate_row_profile()
            if not self.fit_roi_only:
                x_fit = gaussian_fit(self.rows_array, rp)
                rp_gaussian = self.rp_plot.plot(x=x_fit[0], y=self.rows_array)
            else:
                y0 = self.y_int_lims[0]
                y1 = self.y_int_lims[1]
                x_fit = gaussian_fit(self.rows_array[y0:y1], rp[y0:y1])
                rp_gaussian = self.rp_plot.plot(x=x_fit[0],
                                                y=self.rows_array[y0:y1])

            self.rp_gaussian = rp_gaussian

        else:
            self.cp_gaussian.setData([], [])
            self.rp_gaussian.setData([], [])
    def toggle_gaussian(self):
        self.gaussian = not self.gaussian
        if self.gaussian:
            cp = self.calculate_col_profile()
            y_fit = gaussian_fit(self.cols_array, cp)
            cp_gaussian = self.cp_plot.plot(x=self.cols_array, y=y_fit[0])
            self.cp_gaussian = cp_gaussian

            rp = self.calculate_row_profile()
            x_fit = gaussian_fit(self.rows_array, rp)
            rp_gaussian = self.rp_plot.plot(x=x_fit[0], y=self.rows_array)
            self.rp_gaussian = rp_gaussian

        else:
            self.cp_gaussian.setData([], [])
            self.rp_gaussian.setData([], [])
 def updateColprofile(self):
     cp = self.calculate_col_profile()
     self.cp_curve.setData(y=cp)
     if self.gaussian:
         y_fit = gaussian_fit(self.cols_array, cp)
         if not y_fit[1]:  # not estimate
             self.cp_gaussian.setPen(qualitative_colors[0])
         else:
             self.cp_gaussian.setPen(grey)
         self.cp_gaussian.setData(y=y_fit[0])
 def updateRowprofile(self):
     rp = self.calculate_row_profile()
     self.rp_curve.setData(x=rp, y=self.rows_array)
     if self.gaussian:
         x_fit = gaussian_fit(self.rows_array, rp)
         if not x_fit[1]:  # not estimate
             self.rp_gaussian.setPen(qualitative_colors[0])
         else:
             self.rp_gaussian.setPen(grey)
         self.rp_gaussian.setData(x=x_fit[0], y=self.rows_array)