def __init__(self): self.widgets = gtk.glade.XML('mpl_with_glade.glade') self.widgets.signal_autoconnect(GladeHandlers.__dict__) self.figure = Figure(figsize=(8, 6), dpi=72) self.axis = Subplot(self.figure, 111) self.figure.add_axis(self.axis) t = arange(0.0, 3.0, 0.01) s = sin(2 * pi * t) self.axis.plot(t, s) self.axis.set_xlabel('time (s)') self.axis.set_ylabel('voltage') self.canvas = FigureCanvasGTK(self.figure) # a gtk.DrawingArea self.canvas.show() self['vboxMain'].pack_start(self.canvas, gtk.TRUE, gtk.TRUE) self['vboxMain'].show() # below is optional if you want the navigation toolbar self.navToolbar = NavigationToolbar(self.canvas, self['windowMain']) self.navToolbar.lastDir = '/var/tmp/' self['vboxMain'].pack_start(self.navToolbar) self.navToolbar.show() sep = gtk.HSeparator() sep.show() self['vboxMain'].pack_start(sep, gtk.TRUE, gtk.TRUE) self['vboxMain'].reorder_child(self['buttonClickMe'], -1)
def setup_plot(self, figure, name, xlabel, ylabel): plot = Subplot(figure, 111, axisbg='white', frameon='False') #plot.set_axis_bg_color('#000000') plot.set_title(name) plot.set_xlabel(xlabel) plot.set_ylabel(ylabel) return plot
def compressed_image(): img = Image.open('compressed_image.jpg') fig = plt.figure() ax = Subplot(fig, 111) ax.imshow(img, cmap="gray") fig.add_subplot(ax) output = io.BytesIO() FigureCanvas(fig).print_jpg(output) return Response(output.getvalue(), mimetype='image/jpg')
def __init__(self, *args, **kw): wx.Panel.__init__(self, *args, **kw) # Fig self.fig = Figure( figsize=(1, 1), dpi=75, facecolor='white', edgecolor='white', ) # Canvas self.canvas = FigureCanvas(self, -1, self.fig) self.fig.set_canvas(self.canvas) # Axes self.axes = self.fig.add_axes(Subplot(self.fig, 111)) self.axes.set_autoscale_on(False) self.theta_axes = self.axes.twinx() self.theta_axes.set_autoscale_on(False) # Show toolbar or not? self.toolbar = NavigationToolbar2WxAgg(self.canvas) self.toolbar.Show(True) # Create a figure manager to manage things self.figmgr = FigureManager(self.canvas, 1, self) # Panel layout self.profile_selector_label = wx.StaticText(self, label="Sample") self.profile_selector = wx.Choice(self) self.profile_selector.Hide() self.profile_selector_label.Hide() self.Bind(wx.EVT_CHOICE, self.OnProfileSelect) self.sizer = wx.BoxSizer(wx.VERTICAL) self.sizer.Add(self.canvas, 1, border=2, flag=wx.LEFT | wx.TOP | wx.GROW) self.tbsizer = wx.BoxSizer(wx.HORIZONTAL) self.tbsizer.Add(self.toolbar, 0, wx.ALIGN_CENTER_VERTICAL) self.tbsizer.AddSpacer(20) self.tbsizer.Add(self.profile_selector_label, 0, wx.ALIGN_CENTER_VERTICAL) self.tbsizer.AddSpacer(5) self.tbsizer.Add(self.profile_selector, 0, wx.ALIGN_CENTER_VERTICAL) self.sizer.Add(self.tbsizer) self.SetSizer(self.sizer) self.sizer.Fit(self) # Status bar frame = self.GetTopLevelParent() self.statusbar = frame.GetStatusBar() if self.statusbar is None: self.statusbar = frame.CreateStatusBar() status_update = lambda msg: self.statusbar.SetStatusText(msg) # Set the profile interactor self.profile = ProfileInteractor(self.axes, self.theta_axes, status_update=status_update) # Add context menu and keyboard support to canvas self.canvas.Bind(wx.EVT_RIGHT_DOWN, self.OnContextMenu) #self.canvas.Bind(wx.EVT_LEFT_DOWN, lambda evt: self.canvas.SetFocus()) self.model = None self._need_interactors = self._need_redraw = False self.Bind(wx.EVT_SHOW, self.OnShow)
from matplotlib.axes import Subplot from matplotlib.figure import Figure import gtk win = gtk.Window() win.set_name("Embedding in GTK") win.connect("destroy", gtk.mainquit) win.set_border_width(5) vbox = gtk.VBox(spacing=3) win.add(vbox) vbox.show() fig = Figure(figsize=(5,4), dpi=100) ax = Subplot(fig, 111) t = arange(0.0,3.0,0.01) s = sin(2*pi*t) ax.plot(t,s) fig.add_axis(ax) canvas = FigureCanvasGTK(fig) # a gtk.DrawingArea canvas.show() vbox.pack_start(canvas) toolbar = NavigationToolbar(canvas, win) toolbar.show() vbox.pack_start(toolbar, gtk.FALSE, gtk.FALSE)
from matplotlib.backends.backend_gtk import FigureCanvasGTK from matplotlib.figure import Figure import gtk win = gtk.Window() win.set_name("Embedding in GTK") win.connect("destroy", gtk.mainquit) win.set_border_width(5) vbox = gtk.VBox(spacing=3) win.add(vbox) vbox.show() f = Figure(figsize=(5, 4), dpi=100) a = Subplot(f, 111) t = arange(0.0, 3.0, 0.01) s = sin(2 * pi * t) a.plot(t, s) f.add_axis(a) canvas = FigureCanvasGTK(f) # a gtk.DrawingArea canvas.show() vbox.pack_start(canvas) button = gtk.Button('Quit') button.connect('clicked', lambda b: gtk.mainquit()) button.show() vbox.pack_start(button)