def __init__(self, model, graph, index, parentWidget, *args, **kwargs): super(PlotWidget, self).__init__() self.model = model self.graph = graph self.index = index self.menu = self.getContextMenu() self.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) self.customContextMenuRequested.connect(self.contextMenuRequested) # self.connect( self # , SIGNAL("customContextMenuRequested(QPoint)") # , self # , SLOT("contextMenuRequested(QPoint)") # ) self.canvas = CanvasWidget(self.model, self.graph, self.index) self.canvas.setParent(self) self.navToolbar = NavigationToolbar(self.canvas, self) self.hackNavigationToolbar() self.canvas.mpl_connect('pick_event', self.togglePlot) layout = QGridLayout() layout.addWidget(self.navToolbar, 0, 0) layout.addWidget(self.canvas, 1, 0) self.setLayout(layout) self.pathToLine = defaultdict(set) self.lineToDataSource = {} self.axesRef = self.canvas.addSubplot(1, 1) self.legend = None desktop = QApplication.desktop() self.setMinimumSize(desktop.screenGeometry().width() // 4, desktop.screenGeometry().height() // 3) self.canvas.updateSignal.connect(self.plotAllData) self.plotAllData()