Re: [Matplotlib-users] matplotlib subplot is slow

2011-05-05 Thread Benjamin Root
On Thu, Mar 31, 2011 at 7:42 PM, Eddie Schlafly wrote:

>  Hi all,
>
> I was surprised today to notice that "subplot" was the slowest part of some
> plotting code of mine.
>
> On my machine, the last line of the following code puts ten subplots on a
> figure and records the amount of time it took to make them:
>
> >>> import matplotlib
> >>> matplotlib.use('AGG')
> >>> import time
> >>> from matplotlib.pyplot import *
> >>> def f():
> ... t = time.time()
> ... clf()
> ... for i in xrange(10):
> ... subplot(5,2,i+1)
> ... return time.time()-t
> ...
> >>>
> >>> times = [f() for x in xrange(10)]
>
> This code gives me a bunch of times that are on average about half a
> second.  I expected it to be much faster as I wasn't actually plotting
> anything.
>
> Is this expected?  Can I choose a faster backend or something?  I've
> experimented a little but without success.  I realize that 5 hundredths of a
> second per subplot isn't terrifically slow, ... but I guess I make a lot of
> plots.
>
> Thanks a lot,
>
> Eddie Schlafly
>
>
Eddie,

Calling pyplot.subplot() may be slow because it has to determine which
figure is the currently active figure, and then create a new axes object for
that figure.  I would suspect that passing in the figure object and calling
add_subplot from the figure may speed things up.

Also note that v1.0.0 introduced pyplot.subplots() which will create a
figure, and an array of subplots all at once.  There is also the gridspec
method that might also be of interest.

I hope that helps!
Ben Root
--
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network 
management toolset available today.  Delivers lowest initial 
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] matplotlib subplot is slow

2011-04-08 Thread Eddie Schlafly

Hi all,
I was surprised today to notice that "subplot" was the slowest part of some 
plotting code of mine.
On my machine, the last line of the following code puts ten subplots on a 
figure and records the amount of time it took to make them:
>>> import matplotlib>>> matplotlib.use('AGG')>>> import time>>> from 
>>> matplotlib.pyplot import *>>> def f():... t = time.time()... 
>>> clf()... for i in xrange(10):... subplot(5,2,i+1)... 
>>> return time.time()-t... >>> >>> times = [f() for x in xrange(10)]
This code gives me a bunch of times that are on average about half a second.  I 
expected it to be much faster as I wasn't actually plotting anything.
Is this expected?  Can I choose a faster backend or something?  I've 
experimented a little but without success.  I realize that 5 hundredths of a 
second per subplot isn't terrifically slow, ... but I guess I make a lot of 
plots.
Thanks a lot,
Eddie Schlafly--
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users