Hi,
> I've been playing w/both IDLE and IPython, using TkAgg in
> both cases as the back end. Also, I've got the latest
> matplotlib and ipython versions and am using MacPython's
> 2.4.4 IDLE.
> It seems that if IDLE is not invoked w/the -n flag, the
> figures that are drawn can often get the "whirling swirl
> of death" (i.e. they hang). Has it been other users'
> experience that the "-n" removes that problem (it
> mentioned this flag in the manual, but I didn't catch he
> motivation)? And if so, is there no other way to use IDLE
> when using matplotlib interactively? (The nice thing
> about IDLE is its "fresh" state each time you run a file;
> this goes away when -n is used).
Tkinter GUI backend
Todd Miller has written a backend for Tkinter that uses the agg
backend for rendering. To use Tkagg, you need to set the BUILD_TKAGG
flag in setup.py. The windows installer comes with TkAgg prebuilt. See
agg backend for more information on agg rendering and fonts. NOTE: on
at least some versions of redhat linux, you must install a separate
tkinter package, apparently tkinter-2.2.2-26.i386.rpm on Red Hat 9
linux. Alternately, Python built from source code (Python.org tarball,
not the redhat SRPM) includes Tkinter support by default on Red Hat
Linux. In general, TkAgg is known to work with
* python
* idle -n (set tk.PYTHONINSPECT : True in matplotlibrc
* IPython
TkAgg is known not work with:
* SciTE
* pythonw
* Pythonwin
* idle
Both of the latter shells fail with a RuntimeError "abnormal program
termination". I checked on www.python.org about Tkinter and Pythonwin
and they're known not to work together so that explains TkAgg on
Pythonwin. tkinter trouble.
I also looked into SciTE a little and discovered that it is related to
Scintilla which in turn was derived from Pythonwin. scintilla This
indicates to me that the same problem with Tkinter may be affecting
both (SciTE and Pythonwin)... but I am out on a limb.
So yes, -n is required. There were lots of discussions of this on
the mailing list years ago when tkagg was being developed, so if you
are interested you might try searching the archives.