[plot] first sketch of plot screen
This commit is contained in:
parent
ff8bb6a58b
commit
3c99c5800c
36
plot_screen.py
Normal file
36
plot_screen.py
Normal file
@ -0,0 +1,36 @@
|
||||
from PyQt5.QtWidgets import QHBoxLayout, QPushButton, QVBoxLayout, QWidget
|
||||
from PyQt5.QtCore import QObject, pyqtSignal, Qt
|
||||
import matplotlib
|
||||
matplotlib.use('Qt5Agg')
|
||||
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg
|
||||
from matplotlib.figure import Figure
|
||||
|
||||
class MplCanvas(FigureCanvasQTAgg):
|
||||
|
||||
def __init__(self, parent=None, width=5, height=4, dpi=100):
|
||||
fig = Figure(figsize=(width, height), dpi=dpi)
|
||||
self.axes = fig.add_subplot(111)
|
||||
super(MplCanvas, self).__init__(fig)
|
||||
|
||||
|
||||
class PlotScreen(QWidget):
|
||||
close_signal = pyqtSignal()
|
||||
|
||||
def __init__(self, parent) -> None:
|
||||
super().__init__(parent=parent)
|
||||
sc = MplCanvas(self, width=5, height=4, dpi=100)
|
||||
sc.axes.plot([0,1,2,3,4], [10,1,20,3,40])
|
||||
|
||||
self.setLayout(QVBoxLayout())
|
||||
self.layout().addWidget(sc)
|
||||
|
||||
close_btn = QPushButton("close")
|
||||
close_btn.clicked.connect(self.on_close)
|
||||
|
||||
self.layout().addWidget(close_btn)
|
||||
|
||||
def on_close(self):
|
||||
self.close_signal.emit()
|
||||
|
||||
def plot(self, item):
|
||||
print("plot!", item)
|
Loading…
Reference in New Issue
Block a user