I'm having a memory leakage using matplotlib 1.0.1 with wx 2.8.11.0, on
windows XP.
To reproduce, I used the sample from here:
http://matplotlib.sourceforge.net/examples/animation/dynamic_image_wxagg2.htmland
deleted most of the significant lines (see below). I only create a
canvas but I don't create any axes, nor plot any data.
The only thing I do is draw() on a timer event. This makes my process grow
about 6Mbyte per minute.
Is this reproduced in other environments? Any ideas on how to resolve this?
Thanks,
Oren
"""
Copyright (C) 2003-2005 Jeremy O'Donoghue and others
License: This work is licensed under the PSF. A copy should be included
with this source code, and is also available at
http://www.python.org/psf/license.html
"""
import sys, time, os, gc
import matplotlib
matplotlib.use('WXAgg')
from matplotlib import rcParams
import numpy as npy
import matplotlib.cm as cm
from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg
from matplotlib.backends.backend_wx import NavigationToolbar2Wx
from matplotlib.figure import Figure
from wx import *
TIMER_ID = NewId()
class PlotFigure(Frame):
def __init__(self):
Frame.__init__(self, None, -1, "Test embedded wxFigure")
self.fig = Figure((1,1), 50, facecolor='.95')
self.canvas = FigureCanvasWxAgg(self, -1, self.fig)
# Now put all into a sizer
sizer = wx.BoxSizer(wx.VERTICAL)
# This way of adding to sizer allows resizing
sizer.Add(self.canvas, 1, wx.LEFT|wx.TOP|wx.GROW)
self.SetSizer(sizer)
self.Fit()
self._price_ax = self.fig.add_subplot(111)
wx.EVT_TIMER(self, TIMER_ID, self.onTimer)
self.t = wx.Timer(self, TIMER_ID)
self.t.Start(1000)
def onTimer(self, evt):
self.canvas.draw()
if __name__ == '__main__':
app = PySimpleApp()
frame = PlotFigure()
# Initialise the timer - wxPython requires this to be connected to
# the receiving event handler
t = Timer(frame, TIMER_ID)
t.Start(100)
frame.Show()
app.MainLoop()
------------------------------------------------------------------------------
Forrester Wave Report - Recovery time is now measured in hours and minutes
not days. Key insights are discussed in the 2010 Forrester Wave Report as
part of an in-depth evaluation of disaster recovery service providers.
Forrester found the best-in-class provider in terms of services and vision.
Read this report now! http://p.sf.net/sfu/ibm-webcastpromo
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users