| | |
Summary: IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, VOL. 12, NO. 5, SEPTEMBER/OCTOBER 2006
Software Design Patterns for Information Visualization
Jeffrey Heer and Maneesh Agrawala
Abstract--Despite a diversity of software architectures supporting information visualization, it is often difficult to identify, evaluate,
and re-apply the design solutions implemented within such frameworks. One popular and effective approach for addressing such
difficulties is to capture successful solutions in design patterns, abstract descriptions of interacting software components that can
be customized to solve design problems within a particular context. Based upon a review of existing frameworks and our own
experiences building visualization software, we present a series of design patterns for the domain of information visualization. We
discuss the structure, context of use, and interrelations of patterns spanning data representation, graphics, and interaction. By
representing design knowledge in a reusable form, these patterns can be used to facilitate software design, implementation, and
evaluation, and improve developer education and communication.
Index Terms--Design patterns, information visualization, software engineering, object-oriented programming
1 INTRODUCTION
As recognition of the value of visualization has increased and the
demand for visual analytics software has risen, visualization
researchers have developed numerous software frameworks to meet
these needs. By changing the cost structure governing the design and
implementation of visualizations, such frameworks carry the
potential to lower barriers to entry and increase the space of feasible
visualization designs. Still, there is never a single tool or framework
|