[SciPy-user] plot.plt speed

Douglas Eck doug at idsia.ch
Fri Jun 7 05:28:02 CDT 2002

I found a solution to this problem, albeit not a perfect one.
Simply build a long plot string and then use eval()

That is:
         for i in range(shape(x)[0]) :
             pltstr = "%sy,x[%i,:]+%i,'b-'" % (pltstr,i,i)
             if i<shape(x)[0]-1:
                 pltstr="%s," % (pltstr)
         pltstr="%s)" % pltstr
         print pltstr

Maybe this isn't helpful to anyone else, but it was helpful for me.

Douglas Eck wrote:
> I need to plot 10 time series on the same plot window. But it's quite slow:
> plot.plt(rand(10,200))
> takes 18 seconds.
> plot.plt(rand(1,2000))
> takes less than one second
> There are some tricks for speeding up the first case in gnuplot by 
> reshaping
> the array to be 1,2000 and adding a second array for the x values.
> [[1:200][1:200]....[1:200]]. But this has other problems.
> Any ideas? My timeseries are more on the order of (25,2500).... not
> pretty.
> Cheers,
> Doug

Dr. Douglas Eck, http://www.idsia.ch/~doug
Istituto Dalle Molle di Studi sull'Intelligenza Artificiale (IDSIA)
Neural Networks, Rhythm Perception and Production, Dynamical Systems

More information about the SciPy-user mailing list