I've been investigating performance problems we've been having w/ the Qt backends. One problems is that zooming takes forever. I've put a lot of timing loops into the backends to see where things are happening and found a couple of interesting items.
The first is that agg seems to get much slower as you zoom in. The agg draw time goes up as the zoom level goes up. These are plots that are completely done w/ the Ellipse patch. Using the Arc patch helps but is about 10% slower when not zooming. The second (and reason for the email), is that the QtAgg backends are redrawing the whole plot twice when zooming w/ the mouse. The problem is the files: backend_qt.py backend_qt4.py The method mouseReleaseEvent calls draw() at the end of it. This seems to be redundant. None of the other backends call draw at the end of their mouse release code. The release_zoom method in the toolbar already does a draw() call which handles the zoom. In addition, this mouseReleaseEvent code triggers a draw whenever you click anywhere in the figure. Does anyone have any idea why the qt backends should have a draw in the mouse release when the others don't? Ted ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel