Exemple #1
0
class PlotWidget(QtWidgets.QWidget):
    '''
    classdocs
    '''
    __figure__ = None
    __canvas__ = None

    def __init__(self):
        '''
        Constructor
        '''
        super().__init__()
        self.setLayout(QtWidgets.QVBoxLayout(self))
        self.__figure__ = Figure()
        self.__canvas__ = FigureCanvas(self.__figure__)
        #This next line works for when Axes are created, but not when the axis imshow is called
        self.__figure__.add_axobserver(lambda x: self.__canvas__.draw_idle())
        self.layout().addWidget(self.__canvas__)
        self.layout().setMenuBar(NavigationToolbar2QT(self.__canvas__, self))

    def get_figure(self):
        return self.__figure__

    def get_canvas(self):
        return self.__canvas__

    def imshow(self, *args, **kwargs):
        self.__figure__.gca().imshow(*args, **kwargs)
        self.__canvas__.draw_idle()