mirror of
https://github.com/Athemis/PyDSF.git
synced 2025-04-20 20:09:13 +00:00
Start reimplementing plotting code
This commit is contained in:
parent
9d1e3d8fa2
commit
fef87a6657
5 changed files with 152 additions and 54 deletions
|
@ -202,19 +202,19 @@ class Ui_MainWindow(object):
|
|||
self.tabWidget.setSizePolicy(sizePolicy)
|
||||
self.tabWidget.setMinimumSize(QtCore.QSize(300, 300))
|
||||
self.tabWidget.setObjectName("tabWidget")
|
||||
self.tab_raw = MplWidget()
|
||||
self.tab_raw.setObjectName("tab_raw")
|
||||
self.tabWidget.addTab(self.tab_raw, "")
|
||||
self.tab_derivative = MplWidget()
|
||||
self.tab_derivative.setObjectName("tab_derivative")
|
||||
self.tabWidget.addTab(self.tab_derivative, "")
|
||||
self.tab_heatmap = MplWidget()
|
||||
self.tab_heatmap.setObjectName("tab_heatmap")
|
||||
self.tabWidget.addTab(self.tab_heatmap, "")
|
||||
self.tab_heatmap_avg = MplWidget()
|
||||
self.tab_heatmap_avg.setEnabled(False)
|
||||
self.tab_heatmap_avg.setObjectName("tab_heatmap_avg")
|
||||
self.tabWidget.addTab(self.tab_heatmap_avg, "")
|
||||
#self.tab_raw = MplWidget()
|
||||
#self.tab_raw.setObjectName("tab_raw")
|
||||
#self.tabWidget.addTab(self.tab_raw, "")
|
||||
#self.tab_derivative = MplWidget()
|
||||
#self.tab_derivative.setObjectName("tab_derivative")
|
||||
#self.tabWidget.addTab(self.tab_derivative, "")
|
||||
#self.tab_heatmap = MplWidget()
|
||||
#self.tab_heatmap.setObjectName("tab_heatmap")
|
||||
#self.tabWidget.addTab(self.tab_heatmap, "")
|
||||
#self.tab_heatmap_avg = MplWidget()
|
||||
#self.tab_heatmap_avg.setEnabled(False)
|
||||
#self.tab_heatmap_avg.setObjectName("tab_heatmap_avg")
|
||||
#self.tabWidget.addTab(self.tab_heatmap_avg, "")
|
||||
self.horizontalLayout.addWidget(self.splitter)
|
||||
MainWindow.setCentralWidget(self.centralWidget)
|
||||
self.menuBar = QtWidgets.QMenuBar(MainWindow)
|
||||
|
@ -291,10 +291,10 @@ class Ui_MainWindow(object):
|
|||
self.doubleSpinBox_cbar_start.setSuffix(_translate("MainWindow", " °C"))
|
||||
self.label_cbar_end.setText(_translate("MainWindow", "En&d"))
|
||||
self.doubleSpinBox_cbar_end.setSuffix(_translate("MainWindow", " °C"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_raw), _translate("MainWindow", "Raw Data"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_derivative), _translate("MainWindow", "&1st derivative"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_heatmap), _translate("MainWindow", "Heatmap"))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_heatmap_avg), _translate("MainWindow", "Heatmap average"))
|
||||
#self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_raw), _translate("MainWindow", "Raw Data"))
|
||||
#self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_derivative), _translate("MainWindow", "&2nd derivative"))
|
||||
#self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_heatmap), _translate("MainWindow", "Heatmap"))
|
||||
#self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_heatmap_avg), _translate("MainWindow", "Heatmap average"))
|
||||
self.menuFile.setTitle(_translate("MainWindow", "Fi&le"))
|
||||
self.menuHelp.setTitle(_translate("MainWindow", "Hel&p"))
|
||||
self.actionQuit.setText(_translate("MainWindow", "&Quit"))
|
||||
|
|
|
@ -6,12 +6,20 @@ Module implementing MainWindow.
|
|||
|
||||
VERSION = "1.0"
|
||||
|
||||
from PyQt5.QtCore import pyqtSlot
|
||||
from PyQt5.QtCore import pyqtSlot, QObject, pyqtSignal
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
from .Ui_mainwindow import Ui_MainWindow
|
||||
from .mplwidget import MplWidget
|
||||
from pydsf import *
|
||||
|
||||
class ProcessData(QObject):
|
||||
finished = pyqtSignal()
|
||||
|
||||
def process(self):
|
||||
raise NotImplementedError
|
||||
|
||||
|
||||
|
||||
class MainWindow(QMainWindow, Ui_MainWindow):
|
||||
"""
|
||||
|
@ -70,6 +78,27 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
# self.groupBox_cbar.setEnabled(True)
|
||||
# self.groupBox_signal_threshold.setEnabled(True)
|
||||
|
||||
def generate_plot_tab(self, name):
|
||||
tab = MplWidget()
|
||||
tab.setObjectName(name)
|
||||
return tab
|
||||
|
||||
def generate_plate_tabs(self, plate):
|
||||
plotter = PlotResults()
|
||||
|
||||
if id != 'average':
|
||||
tab = self.generate_plot_tab("tab_heatmap_{}".format(id))
|
||||
self.tabWidget.addTab(tab, "Heatmap #{}".format(plate.id))
|
||||
plotter.plot_tm_heatmap_single(plate, tab)
|
||||
|
||||
tab = self.generate_plot_tab("tab_raw_{}".format(id))
|
||||
self.tabWidget.addTab(tab, "Raw Data #{}".format(plate.id))
|
||||
plotter.plot_raw(plate, tab)
|
||||
else:
|
||||
tab = self.generate_plot_tab("tab_heatmap_{}".format(id))
|
||||
self.tabWidget.addTab(tab, "Heatmap ({})".format(plate.id))
|
||||
plotter.plot_tm_heatmap_single(plate, tab)
|
||||
|
||||
@pyqtSlot()
|
||||
def on_buttonBox_process_accepted(self):
|
||||
"""
|
||||
|
@ -128,20 +157,36 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
exp.avg_plate.write_avg_tm_table('{}/plate_{}_05_tm_avg.csv'.format(folder, str(exp.avg_plate.id)))
|
||||
#plot(plate, self)
|
||||
|
||||
plotter = PlotResults(exp)
|
||||
for i in range(self.tabWidget.count()):
|
||||
for plate in exp.plates:
|
||||
if i == 0:
|
||||
plotter.plot_raw(plate, self.tabWidget.widget(i))
|
||||
elif i == 1:
|
||||
plotter.plot_derivative(plate, self.tabWidget.widget(i))
|
||||
elif i == 2:
|
||||
plotter.plot_tm_heatmap_single(plate, self.tabWidget.widget(i))
|
||||
elif exp.avg_plate and i == 3:
|
||||
plotter.plot_tm_heatmap_single(exp.avg_plate, self.tabWidget.widget(i))
|
||||
self.tabWidget.setTabEnabled(i, True)
|
||||
else:
|
||||
self.tabWidget.setTabEnabled(i, False)
|
||||
for i in range(len(exp.plates)):
|
||||
|
||||
plate = exp.plates[i]
|
||||
self.generate_plate_tabs(plate)
|
||||
|
||||
if exp.avg_plate:
|
||||
|
||||
plate = exp.avg_plate
|
||||
self.generate_plate_tabs(plate)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#for i in range(self.tabWidget.count()):
|
||||
# for plate in exp.plates:
|
||||
# if i == 0:
|
||||
# plotter.plot_raw(plate, self.tabWidget.widget(i))
|
||||
# self.tabWidget.setTabText(i, "Raw Data #{}".format(plate.id))
|
||||
#elif i == 1:
|
||||
# plotter.plot_derivative(plate, self.tabWidget.widget(i))
|
||||
#elif i == 2:
|
||||
# plotter.plot_tm_heatmap_single(plate, self.tabWidget.widget(i))
|
||||
#elif exp.avg_plate and i == 3:
|
||||
# plotter.plot_tm_heatmap_single(exp.avg_plate, self.tabWidget.widget(i))
|
||||
# self.tabWidget.setTabEnabled(i, True)
|
||||
#else:
|
||||
# self.tabWidget.setTabEnabled(i, False)
|
||||
|
||||
#fig, ax = figures[0]
|
||||
#self.tabWidget.widget(0).canvas.fig = fig
|
||||
|
@ -190,3 +235,4 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
|||
Slot documentation goes here.
|
||||
"""
|
||||
QApplication.aboutQt()
|
||||
|
||||
|
|
|
@ -485,7 +485,7 @@
|
|||
</widget>
|
||||
<widget class="MplWidget" name="tab_derivative">
|
||||
<attribute name="title">
|
||||
<string>&1st derivative</string>
|
||||
<string>&2nd derivative</string>
|
||||
</attribute>
|
||||
</widget>
|
||||
<widget class="MplWidget" name="tab_heatmap">
|
||||
|
|
|
@ -10,6 +10,7 @@ class MplCanvas(FigureCanvas):
|
|||
FigureCanvas.__init__(self, self.fig)
|
||||
FigureCanvas.setSizePolicy(self, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
|
||||
FigureCanvas.updateGeometry(self)
|
||||
self.setFocusPolicy(QtCore.Qt.StrongFocus)
|
||||
|
||||
def clear(self):
|
||||
self.ax.clear()
|
||||
|
@ -18,7 +19,6 @@ class MplCanvas(FigureCanvas):
|
|||
class MplWidget(QtWidgets.QWidget):
|
||||
def __init__(self, parent = None):
|
||||
QtWidgets.QWidget.__init__(self, parent)
|
||||
|
||||
self.canvas = MplCanvas()
|
||||
self.ntb = NavigationToolbar(self.canvas, self)
|
||||
self.vbl = QtWidgets.QVBoxLayout()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue