
matplotlib save issue
By: a guest on
Jul 20th, 2012 | syntax:
Python | size: 1.91 KB | hits: 39 | expires: Never
import wx
from matplotlib.figure import Figure
from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg
import Image
class Test(wx.Frame):
def __init__(self):
img = Image.open('stinkbug.png')
wx.Frame.__init__(self, None, -1, 'Line save issue',size=img.size)
self.create_menu()
self.scroll = wx.ScrolledWindow(self, -1)
self.scroll.SetScrollbars(5,5,600,400)
x, y = img.size
self.figure = Figure(figsize=(x/72.0, y/72.0), dpi=72)
self.canvas = FigureCanvasWxAgg(self.scroll, -1, self.figure)
self.canvas.SetBackgroundColour('grey')
self.axes = self.figure.add_axes([0.0, 0.0, 1.0, 1.0])
self.axes.set_axis_off()
self.axes.imshow(img, aspect='auto')
self.canvas.draw()
self.background = self.canvas.copy_from_bbox(self.axes.bbox)
self.canvas.restore_region(self.background)
line, = self.axes.plot([5, 100], [5, 100], c='#00FF00',
marker='-', zorder=1,
animated=True)
self.axes.draw_artist(line)
self.canvas.blit(self.axes.bbox)
def create_menu(self):
self.menubar = wx.MenuBar()
menu_file = wx.Menu()
m_save = menu_file.Append(-1, "&Save", "Save")
self.Bind(wx.EVT_MENU, self.on_save, m_save)
menu_file.AppendSeparator()
m_exit = menu_file.Append(-1, "E&xit\tCtrl-X", "Exit")
self.Bind(wx.EVT_MENU, self.on_exit, m_exit)
self.menubar.Append(menu_file, "&File")
self.SetMenuBar(self.menubar)
def on_save(self, event):
self.figure.savefig(r'C:\Documents and Settings\achilds\Desktop\out.png', dpi=self.figure.dpi)
def on_exit(self, event):
self.Destroy()
if __name__ == '__main__':
app = wx.PySimpleApp()
frame = Test()
frame.Show()
app.MainLoop()