Python 将绘图嵌入GUI
我发现了一个网站 它可以通过以下代码创建smith绘图Python 将绘图嵌入GUI,python,pyqt4,Python,Pyqt4,我发现了一个网站 它可以通过以下代码创建smith绘图 ntwk = rf.Network("my data path") ntwk.plot_s_smith() 然后我想把它嵌入到我的python gui中 import sys from PyQt4 import QtGui,QtCore import matplotlib import matplotlib.figure from matplotlib.backends.backend_qt4agg import FigureCanva
ntwk = rf.Network("my data path")
ntwk.plot_s_smith()
然后我想把它嵌入到我的python gui中
import sys
from PyQt4 import QtGui,QtCore
import matplotlib
import matplotlib.figure
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.backends.backend_qt4agg import NavigationToolbar2QT as NavigationToolbar
import skrf as rf
import numpy as np
class PrettyWidget(QtGui.QMainWindow):
def __init__(self):
super(PrettyWidget, self).__init__()
self.setGeometry(100,100,1200,700)
self.center()
self.setWindowTitle('NRW')
self.initUI()
def initUI(self):
grid = QtGui.QGridLayout()
self.setLayout(grid)
self.figure = matplotlib.figure.Figure()
self.canvas = FigureCanvas(self.figure)
self.toolbar = NavigationToolbar(self.canvas, self)
grid.addWidget(self.canvas, 3,0,2,12)
def plot1(self):
self.figure.clf()
self.figure.tight_layout()
self.canvas.draw()
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
app.aboutToQuit.connect(app.deleteLater)
GUI = PrettyWidget()
GUI.show()
app.exec_()
但我不知道如何放置或修改下面的代码
ntwk = rf.Network("my data path")
ntwk.plot_s_smith()
有人能告诉我你有没有IEDA吗?谢谢 有一个ax
关键字用于在现有轴对象上打印。因此,您可以按如下方式修改打印函数:
def plot1(self):
self.figure.clf()
ntwk = rf.Network("my data path")
ntwk.plot_s_smith(ax=self.figure.gca())
self.figure.tight_layout()
self.canvas.draw()
谢谢我现在可以显示我的结果了!顺便说一下,self.figure.tight_layout()已被删除,否则将显示错误。可能是因为此时还没有轴。您可以在绘图后移动它。