class MPLPanel(wx.Panel): def __init__(self, *args, **kwargs): super(MPLPanel, self).__init__(*args, **kwargs) # Setup the canvas self.dpi = 100 self.fig = Figure((3.0, 2.0), dpi=self.dpi) self.ax1 = None self.ax2 = None self.canvas = FigCanvas(self, -1, self.fig) self.data = [] # Setup the toolbar/statustextctrl self.toolbar = NavigationToolbar(self.canvas) self.toolbar.dynamic_update() self.testButton = wx.Button(self.toolbar, label="Pause") self.toolbar.AddControl(self.testButton) self.toolbar.AddSeparator() self.statusctrl = wx.StaticText(self.toolbar, style=wx.TE_READONLY, size=wx.Size(300, 25)) self.toolbar.AddControl(self.statusctrl) # Do the layout panelvbox = wx.BoxSizer(wx.VERTICAL) panelvbox.Add(self.canvas, 1, flag=wx.EXPAND | wx.GROW | wx.ALL) panelvbox.Add(self.toolbar, 0, flag=wx.EXPAND | wx.GROW | wx.ALL) self.SetSizer(panelvbox) panelvbox.Fit(self) self.canvas.draw()
class MPLPanel(wx.Panel): def __init__(self, *args, **kwargs): super(MPLPanel, self).__init__(*args, **kwargs) # Setup the canvas self.dpi = 100 self.fig = Figure((3.0, 2.0)) self.canvas = FigCanvas(self, -1, self.fig) self.do_layout() self.load_config() def do_layout(self): # Setup the toolbar/statustextctrl self.toolbar = NavigationToolbar(self.canvas) if wx.Platform == '__WXMAC__': self.SetToolBar(self.toolbar) else: tw, th = self.toolbar.GetSizeTuple() fw, fh = self.canvas.GetSizeTuple() self.toolbar.SetSize(wx.Size(fw, th)) self.toolbar.dynamic_update() self.toolbar.AddSeparator() self.testButton = wx.Button(self.toolbar, label='Pause') self.toolbar.AddControl(self.testButton) self.statusctrl = wx.StaticText(self.toolbar, style=wx.TE_READONLY, size=wx.Size(300,25)) self.toolbar.AddControl(self.statusctrl) panelvbox = wx.BoxSizer(wx.VERTICAL) panelvbox.Add(self.canvas, 1, flag=wx.EXPAND|wx.GROW|wx.ALL) panelvbox.Add(self.toolbar, 0, flag=wx.EXPAND|wx.GROW|wx.ALL) self.SetSizer(panelvbox) panelvbox.Fit(self) self.toolbar.Realize() self.canvas.draw() def load_config(self, plottype=None): """ Loads from JSON the config file """ pass