PyQtGraph:如何在滚动区域中更改图形的大小(高度和宽度)

2 投票
2 回答
5425 浏览
提问于 2025-04-18 01:34

我想在一个可以滚动的区域里画图,但我不知道怎么调整图的大小。下面是我现在的情况:

在这里输入图片描述

你可以看到,在我想要的大小的滚动区域(红色部分)里,有一个图(实际上我有更多的图,我希望在这个区域里能看到不止一个,至少两个)。

所以,我想把我的图的高度(A)弄得小一点,而宽度(B)则要扩展。有人能帮我吗?

谢谢你的帮助!

2 个回答

0

补充一下Lukes的评论:我们看到的PlotWidget,实际上是一个QGraphicsView,而QGraphicsView又是QWidget的一种。这些都是通过Qt来布局的。我建议你可以试着用Qt Designer玩一玩,这样能更好地理解布局是怎么工作的。

另外一个资源是:https://doc.qt.io/qt-5/layout.html

针对你的具体问题,如果你不想深入了解Qt的布局,你可以使用QWidget.setMinimumHeight和QWidget.setMaximumHeight来限制这个小部件的垂直高度。至于水平部分,那就要看你具体在做什么了。如果是网格布局的话,我可以推荐你看看这个链接:在QGridLayout中只扩展一列

1

看起来你的图表是在一个有“隐藏EMG”按钮的布局里。这个布局的控件需要调整大小,以适应滚动区域。如果你想要更多的帮助,最好提供一些代码示例。

另外,你可以考虑使用pg.MultiPlotWidget,它已经提供了类似的功能。

撰写回答