2点コツがある
1. QWidgetのPromote
Widgetを配置し、右クリックしてPromote toを選択する。
BassClassをQWidgetにし、任意の名前をつける(この例ではMplWidget)。ヘッダファイルはmplwidgetとし、これに対応するヘッダファイルmplwidget.pyを作成してMplWidgetのクラスを定義する。
2. MplCanvasでconstrained layoutをTrueにする
これをやらないとグラフがQWidgetのサイズに収まらない
class MplCanvas(Canvas):
def __init__(self):
self.fig = Figure()
+ self.fig.set_constrained_layout(True)
self.ax = self.fig.add_subplot(111)
Canvas.__init__(self, self.fig)
Canvas.setSizePolicy(self, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
Canvas.updateGeometry(self)