Difference between revisions of "Visualization Design Patterns"

From InfoVis:Wiki
Jump to navigation Jump to search
Line 71: Line 71:
* [[Patterns:Reference Model|Reference Model]]<ref name="soft"/>
* [[Patterns:Reference Model|Reference Model]]<ref name="soft"/>
* [[Patterns:Data Column|Data Column]]<ref name="soft"/>
* [[Patterns:Data Column|Data Column]]<ref name="soft"/>
* [[Patterns:Cascaded Table|Cascaded Table]]
* [[Patterns:Cascaded Table|Cascaded Table]] <span class="plainlinks">[http://www.gumball-machine.com/vending-machines.html <span style="color:black;font-weight:normal; text-decoration:none!important; background:none!important; text-decoration:none;">vending machines</span>]  
* [[Patterns:Relational Graph|Relational Graph]]
* [[Patterns:Relational Graph|Relational Graph]]
* [[Patterns:Proxy Tuple|Proxy Tuple]]
* [[Patterns:Proxy Tuple|Proxy Tuple]]

Revision as of 10:01, 30 July 2011


For any design discipline, including Information and Scientific Visualization, loan modification

there are design problems within the domain that tend to arise, time and again. Although effective business blog solutions may be known, they are not helpful unless that knowledge is coherently structured and communicated to colleagues. Without good structure, design knowledge may be disparate and disjointed, and relationships among solutions may not be apparent. Without good communication, designers who are unaware of solutions may be forced to ‘reinvent the wheel’, wasting unnecessary effort on a problem that diamond solitaire engagement rings has already been solved by others. Some means of capturing and codifying solutions to Information Visualisation design problems would be useful for those engaged in practice. The Visualization Design Patterns described here have been proposed for this purpose.

Foundational Patterns

These patterns are the building blocks of Visualizations. They are more "reference patterns" than true "design patterns". Visualization designers will assume they are a given component of visualization design. The patterns are included to provide a common technical lexicon, to build a lingua franca used throughout the language, to encourage communications between novices and experts, and to facilitate a discussion of pros and cons.

Visualization Architecture

Interaction Patterns

User intent-based categories of interaction techniques [1]

See also: Interaction Design Patterns (wikipedia article)

Display Rendering Patterns

Programming Patterns

These are patterns related to the backend programming of visualization systems. They are organised according to the Model-View-Controller approach, though other organizational systems may also be appropriate.

Heer and Agrawala's paper Software Design Patterns for Information Visualization[2] provides a useful overview of software design patterns specific to infovis tasks.

Data Modelling and Management



Development Patterns

These patterns relate to the systems development lifecycle and to the activities involved in implementing and testing software.


For techniques used during the design process to evaluate coding and design-time decisions.

Evaluation and Testing

Quality Assurance, Evaluation, and Usability testing methods to close the feedback loop during the development lifecycle.


  1. Yi, J. S., Kang, Y. A., Stasko, J., & Jacko, J. A. (2007). Toward a Deeper Understanding of the Role of Interaction in Information Visualization. IEEE Transactions on Visualization and Computer Graphics (TVCG), 13(6). Presented in InfoVis 2007, Sacramento, California, October 28 - November 1, 1224-1231. (see also Toward a Deeper Understanding of the Role of Interaction in Information Visualization (presentation))
  2. 2.0 2.1 2.2 see Heer, J. & Agrawala, M., 2006. Software Design Patterns for Information Visualization. IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, 12(5), p.853.