【问题标题】:PyQtGraph plot incorrectly displayed on Qt MainWindowPyQtGraph 图在 Qt MainWindow 上显示不正确
【发布时间】:2016-12-07 00:59:27
【问题描述】:

所以我试图让 PyQtGraph 在我正在开发的 GUI 中绘制图形(您可以在此处查看 https://github.com/allg18/MuonAquisitionTool,我使用的是 Python3 和 PyQt4)。 但是,当我将 plotwidget 添加到 MainWindow 中的 groupbox 时,它总是很小。 plotgraph 没有扩展到占据整个 groupbox。

class MainWindow2(QMainWindow, Ui_MainWindow):
    def __init__(self):
        super(MainWindow2, self).__init__()

        # Set up the user interface from Designer.

        self.setupUi(self)

        """Booting up the Graphics"""
        self.preview_plot = pg.PlotWidget(self.groupBox_2)
        self.preview_plot.adjustSize()
        self.data1 = numpy.random.normal(size=300)
        self.curve1 = self.preview_plot.plot(self.data1)

其中 groupBox_2 是我想把它放在主窗口中的地方。 如您所见,我还尝试在那里放置“adjust_size”。我也试过了:

self.preview_plot.resize(500, 500)

这确实有效,这是我获得与图片中的尺寸不同的唯一方法

更新: 我尝试添加以下行,但这并没有再次改变图形小部件的大小...

self.graph.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)

【问题讨论】:

    标签: qt python-3.x graph pyqt pyqtgraph


    【解决方案1】:

    不要尝试自己定位小部件,这很难且容易出错。 Qt 有一个布局机制来为你做这件事。你可以阅读它here

    我无法修复您的示例,因为它不完整,我没有 QMainWindowUi_MainWindow 类(将来请创建 MCVE)。但是,可能有一些组框布局,您可以使用 addWidget 添加绘图小部件。

    【讨论】:

    • 你自己定位小部件是什么意思?我只是用“self.preview_plot = pg.PlotWidget(self.groupBox_2)”设置了父小部件......然后我尝试了不同的命令,但唯一对图像大小做任何事情的是我所做的“调整大小”。然而,“resize(self.preview_plot.sizeHint())”也没有做任何事情。
    • 我的意思是不要做任何明确的调整大小或定位。只需使用布局机制。
    猜你喜欢
    • 1970-01-01
    • 2017-12-19
    • 2022-07-11
    • 1970-01-01
    • 1970-01-01
    • 2014-05-17
    • 1970-01-01
    • 1970-01-01
    • 2019-12-10
    相关资源
    最近更新 更多