pyqt5+pyqtgraph绘制流程图
简单示例
import sys
import pyqtgraph as pg
from PyQt5.QtWidgets import QApplication, QGridLayout, QGroupBox, QWidget
from pyqtgraph.flowchart import Flowchartpg.setConfigOptions(background='w')
pg.setConfigOptions(crashWarning=True)
pg.setConfigOptions(exitCleanup=True)class DemoUI(QWidget):def __init__(self):super(DemoUI, self).__init__()self.setUI()self.show()def setUI(self):self.setWindowTitle("DemoUI")self.resize(QApplication.desktop().availableGeometry().width() - 400,QApplication.desktop().availableGeometry().height() - 200)self.layout = QGridLayout(self)self.flowChartBox = QGroupBox(self)self.fc = Flowchart()self.flowChartWidget = self.fc.widget().chartWidgetself.flowChartLayout = QGridLayout(self.flowChartBox)self.flowChartLayout.setContentsMargins(0, 0, 0, 0)self.flowChartLayout.addWidget(self.flowChartWidget)self.layout.addWidget(self.flowChartBox, 0, 0, 1, 1)if __name__ == '__main__':app = QApplication(sys.argv)main = DemoUI()app.exit(app.exec_())
通过鼠标右击可以添加节点,支持连线,修改节点名称等等;
默认的input和output可以删除或者隐藏
self.fc.inputNode.close()self.fc.outputNode.close()# self.fc.inputNode.hide()# self.fc.outputNode.hide()
官方文档: https://pyqtgraph.readthedocs.io/en/latest/flowchart/index.html