Prefuse


Prefuse is a Java-based toolkit for building interactive information visualization applications. It supports a rich set of features for data modeling, visualization and interaction. It provides optimized data structures for tables, graphs, and trees, a host of layout and visual encoding techniques, and support for animation, dynamic queries, integrated search, and database connectivity.
Prefuse uses the Java 2D graphics library, and is easily integrated into Swing applications or Java applets. Prefuse is licensed under the terms of a BSD license, and can be used freely for commercial and non-commercial purposes.

Overview

Prefuse is a Java-based extensible software framework for creating interactive information visualization applications. It can be used to build standalone applications, visual components and Java applets. Prefuse intends to simplify the processes of visualizing, handling and mapping of data, as well as user interaction.
Some of Prefuse's features include:
Prefuse has been used in school course projects, academic and industrial research, and commercial software development.

Architecture

The design of the prefuse toolkit is based upon the information visualization reference model, a software architecture pattern that breaks up the visualization process into a series of discrete steps. "Prefuse: a toolkit for interactive information visualization" provides more details on implementation and evaluation.
The information visualization reference model was developed in the Ph.D. thesis work of Ed Chi, under the name of the data state model. Chi showed that the framework successfully modeled a wide array of visualization applications. Later, Chi's work showed that the model was functionally equivalent to the data flow model used in existing graphics toolkits such as VTK. In their work, "Readings in Information Visualization: Using Vision to Think", Stuart K. Card, Jock D. Mackinlay, and Ben Shneiderman present their own interpretation of this pattern, dubbing it the "information visualization reference model".