diff --git a/src/gui_qt/main/management.py b/src/gui_qt/main/management.py index 45fc02f..fb24633 100644 --- a/src/gui_qt/main/management.py +++ b/src/gui_qt/main/management.py @@ -829,9 +829,23 @@ class UpperManagement(QtCore.QObject): new_x = self.data[new_axis[0]].x new_key = [] + missed = [] for ids in data_ids: - k = self.add(interpolate(self.data[ids], new_x, xlog=xlog, ylog=ylog, kind=mode, extrapolate=True)) - new_key.append(k) + try: + k = self.add(interpolate(self.data[ids], new_x, xlog=xlog, ylog=ylog, kind=mode, extrapolate=True)) + new_key.append(k) + except ValueError: + missed.append(self.data[ids].name) + + if missed: + missed_str = '\n'.join(missed) + _ = QtWidgets.QMessageBox.warning( + QtWidgets.QWidget(), + 'Interpolation failed', + f'Interpolation failed for the following sets:\n\n' + f'{missed_str}\n\n' + f'(Probably because of duplicate x values)' + ) self.newData.emit(new_key, dest_graph)