Technical Report Number
This report describes an object-oriented tool that has been developed for viewing graphs on a Macintosh II computer using Allegro Common Lisp. The tool is useful for visualizing data which can be represented in tree or graph form. The graphs can be viewed for far away to get a global view, and from close up so that the labels on the vertices can be discerned. Scrolling can be performed at a nearly infinite number of resolutions, and a search feature makes it easy to find any node rapidly. Although the 'information space' on which the graph is logically plotted is 2-dimensional, nodes can be arbitrarily large or small, and this combined with the zooming feature gives somewhat the illusion of 3-dimensions. The tool is implemented using an object-oriented paradigm, in which the window containing the graph rendering is an object, and so are each of the vertices in the graph. Operations on vertices of the graph are implemented as messages to objects, so that specifics objects can choose to respond in individual ways to various events. This approach makes the tool useful for a wide range of tasks, including browsing the object system inheritance lattice of the lisp system itself, displaying dependency nets in a belief maintenance system, and browsing a hypertext network.
Cousins, Steve B. and Fingerhut, J. Andrew, "A Graph Browser with Zoom and Roam for Allegro Common Lisp" Report Number: WUCS-88-19 (1988). All Computer Science and Engineering Research.