memory problem


I am using matplotlib with python to generate a bunch of charts. I use IDLE, have numpy version 1.0, and pylab version 2.5 with TkAgg if that is relavant. My
code works fine for a single iteration, which creates and saves 4
different charts. The trouble is that when I try to run it for the
entire set (about 200 items) it can run for 12 items at a time, generating 48 charts. On the
13th, I get an error from matplotlib that says it can’t access data.
However, if I start the program at the point it just failed, it works
fine and will create the charts for the next 12 before failing. I
assume that I am not closing the files properly somehow or otherwise
misallocating memory. I tried just reimporting pylab each iteration,
but that didn’t help. This is the function that creates a chart:

#create and save the figure
def CreateFigure(state, facility, unit, SO2, increment, year, P99):
size = len(SO2)

#Create Plot
 figure(1, figsize=(10,8))
 bar(range(1, size+2), SO2, width=0.1, color='k')
 ylim(0, 1.1*SO2[-1])
 ylabel('SO2 [lb/hr]')
 heading = ConstructFigName(state, facility, unit, increment, year)

#set handles
 xticklines = getp(gca(), 'xticklines')
 xgridlines = getp(gca(), 'xgridlines')
 xticklabels = getp(gca(), 'xticklabels')
 yticklines = getp(gca(), 'yticklines')

#set properties
 setp(xticklines, visible=False)
 setp(xgridlines, visible=False)
 setp(xticklabels, visible=False)
 setp(yticklines, visible=False)

axhspan(P99, P99, lw=3, ec='r', fc='r')
 ax = gca()

 P99 = '%0.1f' % P99
 text(0.01, 0.95, '99th Percentile: '+P99+' lb/hr',


figpath = ConstructFigPath(state, facility, unit, increment, year)

Can you see the problem? If there is nothing obviously wrong… I tried to run the memory leak algorithm from the website, but the line:

a2 = os.popen(‘ps -p %d -o rss,sz’ % pid).readlines()

generates an empty list rather than information about about memory, and I am not clear on how to modify it to do something useful.