Mondrian is an engine for scripting interactive visualizations. Mondrian is the result of Michael Meyer’s work on his master thesis. I took over development at the end of 2006. Mondrian earned the 2nd prize at ESUG 2006 Innovation Awards.
Here is an example of a script in Mondrian that, given a collection of classes, displays a their hierarchy:
view := ViewRenderer new. "Create the Mondrian renderer"
view nodes: classes. "Add nodes"
view edges: classes from: #superclass to: #yourself. "Add edges"
view treeLayout. "Specify the layout"
view open. "Open the resulting view"
The script first creates the renderer. Then it adds a node for each class. It then draws an edge from each class to the superclass. It arranges the graph in a tree layout, and eventually opens the window.
Mondrian is an essential part of Moose and it is used extensively for exploration of unknown data and patterns.
This video demos the basic scripting in Mondrian. It starts with a Mondrian Easel open on a group of classes.