> In other words, with this simulation in place, one should be able to > create graphical objects, translate them, scale them, shear them, > recombine them, split them up, interrogate them, etc., and finally > save these objects to files, without a window ever popping up. In > fact, this code should run perfectly well on a terminal without any > graphical capabilities at all.
This is exactly what the non-gui back-ends are for (agg in particular). While it would be nice to be able to do all that with a GUI back-end, the point of the GUI is to give you a GUI -- if you don't need one, don't use one. > Incidentally, one of the reasons for my difficulties with using > matplotlib is 100% conceptual. I just can't wrap my head around the > idea of needing to implement a "non-interactive" mode. (Actually, I > to call it "non-GUI", since it's perfectly possible to envision an > interaction that is entirely text-based.) non-GUI is what the Agg, etc back-ends are for. non-interactive is a different concept -- it's specifically a subset of GUI behavior: "interactive" means that you are typing things interactively at the command prompt, and thus want to see changes you make to a figure after each change -- exactly the opposite of what you want. "non-interactive" means that you want to be able to do a number of manipulations to a figure, and only show the result of those changes when you specifically ask to see them. This is kind of similar to what you want, but till really talking about behavior with a GUI back-end. non-GUI back ends are inherently non-interactive. I'm not totally sure about how MPL works, but it may need to query teh back-end occasinally when doing layout, etc. That may require the GUI toolkit to be initialized even before anyactual rendering is done. If that's the case, then you simpily never want to use a GUI back-end when you don't have/need a GUI (text terminal, web application, batch scripts, etc). -Chris ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today http://p.sf.net/sfu/msIE9-sfdev2dev _______________________________________________ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel