Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Matplotlib+;Qt:tight_layout()不';I don’我不能在第一轮抽签时工作_Python_Qt_Matplotlib_Pyqt_Pyqt4 - Fatal编程技术网

Python Matplotlib+;Qt:tight_layout()不';I don’我不能在第一轮抽签时工作

Python Matplotlib+;Qt:tight_layout()不';I don’我不能在第一轮抽签时工作,python,qt,matplotlib,pyqt,pyqt4,Python,Qt,Matplotlib,Pyqt,Pyqt4,使用PyQt4和matplotlib我连接了一个按钮,单击该按钮可以执行一些计算并绘制图形。只有在第二次单击按钮后,才会应用紧密布局() 当我设置完轴并将数据放在图表上后,我调用 fig.tight_layout() fig.canvas.draw() 我试图假装第二次按下按钮,但没有成功: from PyQt4 import QtGui QtGui.QApplication.processEvents() fig.tight_layout() fig.canvas.draw() QtGui.

使用
PyQt4
matplotlib
我连接了一个按钮,单击该按钮可以执行一些计算并绘制图形。只有在第二次单击按钮后,才会应用
紧密布局()

当我设置完轴并将数据放在图表上后,我调用

fig.tight_layout()
fig.canvas.draw()
我试图假装第二次按下按钮,但没有成功:

from PyQt4 import QtGui
QtGui.QApplication.processEvents()
fig.tight_layout()
fig.canvas.draw()
QtGui.QApplication.processEvents()
fig.tight_layout()
fig.canvas.draw()
我的想法是Qt曲面不会被认为是脏的,但是调整窗口的大小会用同样松散的布局重新绘制图表。当我清除轴并重新填充图表时,紧密布局确实适用


第一次绘制图形时,如何使
紧密布局()
应用?

似乎没有必要显式调用
draw
processEvents
。相反,我只需要调用
canvas.updateGeometry()

作为旁注,不要将嵌入与
pyplot
混为一谈(我无法从这段代码中判断你是否是,但这可能会把你搞砸)是的,如果导入了
pyplot
,看起来就像,绘图结果是错误的。但是,导致此问题的代码没有任何对
pyplot
的引用。