Tg export finalized

This commit is contained in:
Dominik Demuth
2023-06-20 19:09:31 +02:00
parent 032ffb72b1
commit c9ea32629d
7 changed files with 63 additions and 29 deletions

View File

@ -14,7 +14,7 @@ from nmreval.data import DSC, Points
class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
newTg = QtCore.pyqtSignal(dict, dict, str)
newTg = QtCore.pyqtSignal(dict, list, str)
def __init__(self, management, parent=None):
super().__init__(parent=parent)
@ -30,7 +30,7 @@ class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
self._lines = {}
self._hodge = {
'onset': (PlotItem(x=[], y=[], pen=None, symbol='o', symbolBrush=Tab10.TabBlue.rgb(), name='Onset'), None),
'mid': (PlotItem(x=[], y=[], pen=None, symbol='s', symbolBrush=Tab10.TabOrange.rgb(), name='Midpoint'), None),
'midpoint': (PlotItem(x=[], y=[], pen=None, symbol='s', symbolBrush=Tab10.TabOrange.rgb(), name='Midpoint'), None),
'end': (PlotItem(x=[], y=[], pen=None, symbol='t', symbolBrush=Tab10.TabGreen.rgb(), name='End'), None),
'inflection': (PlotItem(x=[], y=[], pen=None, symbol='d', symbolBrush=Tab10.TabRed.rgb(), name='Inflection'), None),
# 'fictive': PlotItem(x=[], y=[], pen=None, symbol='t1', symbolBrush=Tab10.TabPurple.rgb(), name='Fictive'),
@ -40,6 +40,9 @@ class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
for plt, _ in self._hodge.values():
self.tau_plot.addItem(plt)
self.tau_plot.setLogMode(y=True)
self.pushButton_2.hide()
self.label_4.hide()
self.label_5.hide()
self.limits = RegionItem(), RegionItem()
for lim in self.limits:
@ -253,6 +256,7 @@ class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
if len(m) > 1:
data = tau_hodge(*array(m).T)
data.name = f'{data.name} ({tg_type.capitalize()})'
plot.setData(data.x, data.y)
self._hodge[tg_type] = (plot, data)
@ -271,15 +275,25 @@ class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
for key, tg in self._tg_value.items():
tgx = [x for x, y in tg.values()]
tgy = [y for x, y in tg.values()]
tg_pts = Points(x=tgx, y=tgy, name=self._management[key].name, value=self._management[key].value)
ret_dic[key] = (
tg_pts,
self._lines[key],
)
if self.tg_export_check.isChecked():
tg_pts = Points(x=tgx, y=tgy, name=self._management[key].name + ' (Tg)', value=self._management[key].value)
else:
tg_pts = None
ret_dic2 = {}
for k, (_, v) in self._hodge.items():
ret_dic2[k] = v
if self.tglines_export_check.isChecked():
line = self._lines[key]
else:
line = []
ret_dic[key] = (tg_pts, line)
ret_dic2 = []
for i in range(self.hodge_selection.count()):
if self.hodge_selection.isChecked(i):
item = self.hodge_selection.itemText(i).lower()
v = self._hodge.get(item)
ret_dic2.append(v[1])
self.newTg.emit(ret_dic, ret_dic2, graph_id)
self.close()