Eric Firing wrote:
> Jeff,
>
> Basemap methods like plot() include a "draw_if_interactive" command, 
> followed by a call to the set_axes_limits() method, which ends with
>
>           # force draw if in interactive mode.
>          if is_interactive():
>              figManager = _pylab_helpers.Gcf.get_active()
>              figManager.canvas.draw()
>
> It seems to me that you could eliminate all those "draw_if_interactive" 
> blocks from plot etc., and replace the end block of set_axes_limits() with
>
>          if is_interactive():
>              import matplotlib.pyplot as plt
>              plt.draw_if_interactive()
>
> The advantages would be reduced clutter in the drawing methods, and 
> consistent use of draw_if_interactive.  I think the latter would make 
> interactive running of functions and subclasses built on basemap more 
> efficient by reducing redundant draw operations.
>
> It also looks like at least most of the operations in set_axes_limits 
> really need to be done only once (although I have not checked this 
> carefully).  Instead of repeating them with every call to a plotting 
> method, the basemap instance could keep a list of hashes of axes objects 
> on which the operations have already been run, and use that to prevent 
> duplication.
>
> Nothing urgent here--just some ideas that occur to me while working with 
> basemap.  If you think any are worth pursuing, and you want me to take a 
> shot at it, let me know.
>
> Eric
>
>
>   
Eric:  You are right, that could be done much more efficiently.  I'm 
stuck in the U.K. waiting for the volcanic dust to clear, so if you want 
to take a shot at it go ahead.

-Jeff


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Reply via email to