more gui stuff
This commit is contained in:
parent
98f40179e1
commit
34a4532a02
|
@ -1,5 +1,6 @@
|
||||||
import sys
|
import sys
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
from typing import List
|
||||||
|
|
||||||
import matplotlib as mpl
|
import matplotlib as mpl
|
||||||
import numpy as np
|
import numpy as np
|
||||||
|
@ -13,7 +14,7 @@ from PySide6.QtWidgets import (
|
||||||
QApplication,
|
QApplication,
|
||||||
QMainWindow,
|
QMainWindow,
|
||||||
QMenu,
|
QMenu,
|
||||||
QMenuBar,
|
QProgressBar,
|
||||||
QPushButton,
|
QPushButton,
|
||||||
QToolBar,
|
QToolBar,
|
||||||
QVBoxLayout,
|
QVBoxLayout,
|
||||||
|
@ -34,10 +35,11 @@ class PlotWidget(QWidget):
|
||||||
layout = QVBoxLayout()
|
layout = QVBoxLayout()
|
||||||
self.setLayout(layout)
|
self.setLayout(layout)
|
||||||
|
|
||||||
self.fig = plt.Figure(figsize=(5, 4), dpi=100)
|
self.fig = plt.Figure(figsize=(5, 4), dpi=100, tight_layout=True)
|
||||||
self.ax = self.fig.add_subplot(111)
|
self.ax = self.fig.add_subplot(111)
|
||||||
self.setup_logmag()
|
self.setup_logmag()
|
||||||
# self.setup_smith()
|
# self.setup_smith()
|
||||||
|
self.ax.legend(loc="upper right")
|
||||||
|
|
||||||
canvas = FigureCanvasQTAgg(self.fig)
|
canvas = FigureCanvasQTAgg(self.fig)
|
||||||
layout.addWidget(canvas)
|
layout.addWidget(canvas)
|
||||||
|
@ -51,14 +53,22 @@ class PlotWidget(QWidget):
|
||||||
self.ax.xaxis.set_major_formatter(EngFormatter())
|
self.ax.xaxis.set_major_formatter(EngFormatter())
|
||||||
self.ax.set_xlabel("Frequency [Hz]")
|
self.ax.set_xlabel("Frequency [Hz]")
|
||||||
|
|
||||||
def setup_logmag(self):
|
def setup_logmag(self, ylim: List[float] = [-30, 30]):
|
||||||
self.setup_rect()
|
self.setup_rect()
|
||||||
|
self.ax.set_ylim(ylim)
|
||||||
self.ax.set_ylabel("Amplitude [dB]")
|
self.ax.set_ylabel("Amplitude [dB]")
|
||||||
|
|
||||||
def setup_phase(self):
|
def setup_phase(self):
|
||||||
self.setup_rect()
|
self.setup_rect()
|
||||||
|
self.ax.set_ylim(-200, 200)
|
||||||
self.ax.set_ylabel("Phase [deg]")
|
self.ax.set_ylabel("Phase [deg]")
|
||||||
|
|
||||||
|
def setup_vswr(self):
|
||||||
|
self.setup_rect()
|
||||||
|
self.ax.set_yticks(np.arange(1, 11))
|
||||||
|
self.ax.set_ylim(1, 10)
|
||||||
|
self.ax.set_ylabel("VSWR")
|
||||||
|
|
||||||
def setup_smith(self):
|
def setup_smith(self):
|
||||||
self.ax.grid(False)
|
self.ax.grid(False)
|
||||||
self.ax.set_xlim(-1, 1)
|
self.ax.set_xlim(-1, 1)
|
||||||
|
@ -105,15 +115,28 @@ class MainWindow(QMainWindow):
|
||||||
menubar.addMenu(menu_calibration)
|
menubar.addMenu(menu_calibration)
|
||||||
|
|
||||||
# Content
|
# Content
|
||||||
|
window_layout = QVBoxLayout()
|
||||||
|
|
||||||
|
prog_sweep = QProgressBar()
|
||||||
|
prog_sweep.setMinimum(0)
|
||||||
|
prog_sweep.setMaximum(100)
|
||||||
|
prog_sweep.setTextVisible(False)
|
||||||
|
prog_sweep.setValue(50)
|
||||||
|
window_layout.addWidget(prog_sweep)
|
||||||
|
|
||||||
|
# window_widget.se
|
||||||
plot_layout = QVBoxLayout()
|
plot_layout = QVBoxLayout()
|
||||||
# TODO: handle plots properly
|
# TODO: handle plots properly
|
||||||
for i in range(1):
|
for i in range(2):
|
||||||
plot0 = PlotWidget()
|
plot0 = PlotWidget()
|
||||||
plot_layout.addWidget(plot0)
|
plot_layout.addWidget(plot0)
|
||||||
|
plot_widget = QWidget()
|
||||||
|
plot_widget.setLayout(plot_layout)
|
||||||
|
window_layout.addWidget(plot_widget)
|
||||||
|
|
||||||
# Set the central widget of the Window.
|
# Set the central widget of the Window.
|
||||||
widget = QWidget()
|
widget = QWidget()
|
||||||
widget.setLayout(plot_layout)
|
widget.setLayout(window_layout)
|
||||||
self.setCentralWidget(widget)
|
self.setCentralWidget(widget)
|
||||||
|
|
||||||
def saveas_config(self):
|
def saveas_config(self):
|
||||||
|
|
Loading…
Reference in New Issue
Block a user