コード例 #1
0
   def __createFigure(self):
   ##      self.__fig=mpl.figure.Figure(figsize=(8, 5),constrained_layout=True, tight_layout=None)  #单位英寸
   ##      self.__fig=mpl.figure.Figure(figsize=(8, 5))  #单位英寸
      self.__fig=mpl.figure.Figure() 
      figCanvas = FigureCanvas(self.__fig)  #创建FigureCanvas对象,必须传递一个Figure对象
      self.__fig.suptitle("suptitle:matplotlib in Qt GUI",fontsize=16, fontweight='bold')  # 总的图标题

      naviToolbar=NavigationToolbar(figCanvas, self)  #创建NavigationToolbar工具栏
      actList=naviToolbar.actions()  #关联的Action列表
      count=len(actList)       #Action的个数
      lastAction=actList[count-1]   #最后一个Action

      labCurAxes=QLabel("当前子图")
      naviToolbar.insertWidget(lastAction,labCurAxes)
      self.__comboAxes=QComboBox(self)    #子图列表,用于选择子图
      self.__comboAxes.setToolTip("选择当前子图")
      self.__comboAxes.currentIndexChanged.connect(self.do_currentAxesChaned)
      naviToolbar.insertWidget(lastAction,self.__comboAxes)

      naviToolbar.insertAction(lastAction,self.ui.actQuit)  #在最后一个Action之前插入一个Action
   ##      naviToolbar.setToolButtonStyle(Qt.ToolButtonTextUnderIcon)  #ToolButtonTextUnderIcon
      self.addToolBar(naviToolbar)  #添加作为主窗口工具栏

      splitter = QSplitter(self)
      splitter.setOrientation(Qt.Horizontal)
      splitter.addWidget(self.ui.toolBox)    #左侧控制面板
      splitter.addWidget(figCanvas)          #右侧FigureCanvas对象
      self.setCentralWidget(splitter)