Hi there. This is Fisheye.
There have been a couple generations of GUIs for yt. The first one was called
"Reason" and depended on wxPython. wxPython was relatively easy to install on
most systems, but it was (and still is!) kind of a pain to program for. It's
still included with yt, but it's mostly bitrot and I'm not sure it's functional
anymore. It did some neat things -- you could draw spheres and make histograms
from those spheres, and you could link plots and drag them around and whatnot.
What actually ended up killing Reason was the fact that I just never used it.
It was heavyweight, and I didn't really want to use it.
The second generation never really made it off the ground -- I wrote about 50%
of a "Reason v2" that was based on wxPython *or* Qt, and used Traits by
Enthought as a backend. It was nice, but using Traits in just a GUI setting as
opposed to threading the entire code (something I wasn't willing to do) made it
a bit of an awkward solution. Still, it was able to use VTK for isocontours
and cutting planes, which was nice. The 2D plotting never really came up to
Then, I made a couple tiny GUIs. These will probably persist -- they're either
Traits-based (like the Chaco GUI that presents a Google Maps style interface to
the data) or GLUT-based (like the various small volume renderers and grid
browsers and image viewers.)
At the Enzo Workshop in 2010, Tom suggested I try to replicate the Jacques GUI
in Python. We looked at FLTK first, but I couldn't get it to compile, and the
Python bindings were a little out of date. But, Tkinter comes with Python! It
doesn't always build, particularly if the Tk library isn't on the system, but
it mostly works.
Fisheye will be very simple. It'll do small bits and pieces, it'll be very
stateful, and it'll try to keep it all short and sweet. And maybe someday
it'll be killed by Reason, when Reason can be written to have fewer
dependencies and be more maintainable.
For now we'll develop it outside the yt repo, so feel free to fork the
repository and make changes and make pull requests.
-Matt, July 2010