def create_peakset(self,shape='g'): '''Filter the candidates to get a subset of true peaks''' peaks = pywaves.peaks_ridges1d(self._wtset, self._ridgesset, self._scalevals, False, self.min_ridge_length, self.min_child_length, None, self.min_ridge_sum, self.min_child_sum) binsize = np.diff(self._x).mean() positions = self._x[peaks[0][1]] widths = self._scalevals[peaks[0][0]+1]*2*binsize heights = self._y[peaks[0][1]] areas = widths*heights pks=[] for i in range(len(positions)): pks.append(Peak(centre=positions[i],width=widths[i],area=areas[i],height=heights[i],shape=shape)) self.peaks = pks return pks