title: Software design patterns for information visualization.
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.
authors.affiliation: Computer Science Division, University of California, Berkeley, USA. jheer@cs.berkeley.edu
authors.forename: Jeffrey
authors.initials: J
authors.lastname: Heer
authors.forename: Maneesh
authors.initials: M
authors.lastname: Agrawala
mesh_terms: D000465:Algorithms; D003196:Computer Graphics; D003628:Database Management Systems; D016208:Databases, Factual; D016247:Information Storage and Retrieval / Q000379:methods*; D012984:Software; D012985:Software Design; D014584:User-Computer Interface