start tg saving

This commit is contained in:
Dominik Demuth
2023-06-15 17:24:35 +02:00
parent 988d2ccbda
commit 7732544f69
7 changed files with 133 additions and 78 deletions

View File

@ -24,16 +24,16 @@ class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
self._plots = {}
self._tg_value = {}
self._fit = {}
self._hodge_plots = {
'onset': PlotItem(x=[], y=[], pen=None, symbol='o', symbolBrush=Tab10.TabBlue.rgb(), name='Onset'),
'mid': PlotItem(x=[], y=[], pen=None, symbol='s', symbolBrush=Tab10.TabOrange.rgb(), name='Midpoint'),
'end': PlotItem(x=[], y=[], pen=None, symbol='t', symbolBrush=Tab10.TabGreen.rgb(), name='End'),
'inflection': PlotItem(x=[], y=[], pen=None, symbol='d', symbolBrush=Tab10.TabRed.rgb(), name='Inflection'),
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),
'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'),
# 'TNMH': PlotItem(x=[], y=[], pen=None, symbol='star', symbolBrush=Tab10.TabPurple.rgb(), name='TNMH'),
}
self.tau_plot.getPlotItem().addLegend()
for plt in self._hodge_plots.values():
for plt, _ in self._hodge.values():
self.tau_plot.addItem(plt)
self.tau_plot.setLogMode(y=True)
@ -46,18 +46,14 @@ class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
self.listWidget.itemClicked.connect(self.show_tg_values)
# for x in self._hodge_plots:
# self.hodge_selection.addItem(x)
self.new_graph_tau_combo.setEnabled(False)
self.new_graph_tau_check.stateChanged.connect(lambda state: self.new_graph_tau_combo.setEnabled(bool(state)))
def __call__(self):
print('call')
self.clear()
self._colors = cycle(Tab10)
self.add_sets()
for g in self._management.graphs.list():
print(g)
return self
def clear(self):
@ -67,16 +63,19 @@ class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
self.dsc_plot.removeItem(val)
self.graphicsView_2.removeItem(val)
for plt in self._hodge_plots.values():
for plt in self._hodge.values():
plt.setData(x=[], y=[])
self._dsc = {}
self._plots = {}
self._tg_value = {}
self._fit = {}
self.gra
def add_sets(self):
self.new_graph_tau_combo.clear()
for graphs in self._management.graphs.list():
self.new_graph_tau_combo.addItem(graphs[1], userData=graphs[0])
min_x = 10_000_000
max_x = -10_000_000
for (key, name), c in zip(self._management.active_sets, self._colors):
@ -230,7 +229,8 @@ class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
plot[-1].setData(res.x, res.y)
def hodge(self):
for tg_type, plot in self._hodge_plots.items():
for tg_type, (plot, data) in self._hodge.items():
m = []
for idx in range(self.listWidget.count()):
item = self.listWidget.item(idx)
@ -245,9 +245,23 @@ class TgCalculator(QtWidgets.QDialog, Ui_Dialog):
m.append([tg_value, data.value])
if len(m) > 1:
r = tau_hodge(*array(m).T)
plot.setData(r.x, r.y)
data = tau_hodge(*array(m).T)
plot.setData(data.x, data.y)
def close(self) -> bool:
self.clear()
return super().close()
def accept(self) -> None:
if self.new_graph_tau_check.isChecked():
graph_id = ''
else:
graph_id = self.new_graph_tau_combo.currentData()
print(graph_id)
print(self._tg_value)
print(self._hodge)
for v in self._plots.values():
# (data_plot, tg_plot, glass, liquid, tangent, fictive_cp, tnmh_fit)
print(v.getData())
print(self._plots)