Visualization Assembly Line

Visualization Assembly Line (or its former name “Multidimensional Data Visualization Jigsaw”) is a project I designed in PKUVIS Group. The purpose of this project is to design, implement and evaluate a multidimensional data visualization system in which a group of users can collaboratively create customized visualizations designs for multidimensional datasets.

The current system consists of two parts, a flexible toolkit to freely create user defined visualizations, and collaborative mechanisms that helps users to view others’ visualizations, enhance them or derive new visualizations from them.

Demo »

Project Website »

Flexible Toolkit

The flexible toolkit is designed to create user defined visualizations of multidimensional data. It follows the design of Flexible Linked Axes [1]. The common procedure to create a visualization is to draw axes for dimensions first. Then create scatterplots between axes, or link several axes and scatterplots. Finally highlight interested points by assigning colors and opacities to them with the brushing tool.

Flexible Toolkit
Flexible Toolkit

We provide several additional features.

  • Arrows and text boxes to annotate the visualization.
  • PCA scatterplot as a basic dimensionality reduction tool.
  • Point inspector to see each individual point as a star glyph.
  • Conventional tools such as select, move, delete, undo and redo are also supported.
  • In addition to the tools, a correlation matrix is designed to show correlations of each pair of dimensions. The correlation value is the Maximal Information Coefficient (MIC) [2], its range is 0 (independent) to 1 (function-like relationship), allowing us to map it to a color gradient.
  • The correlation matrix is coupled with the visualization in two ways. First, dimensions for the selected axes, scatterplots and links are highlighted in the matrix. Second, users can drag a cell of the matrix to the visualization to create a scatterplot or a pair of linked axes.

Collaborative Mechanisms

The collaborative mechanisms enables users to share their visualizations, view others’ visualizations, enhance and even merge visualizations.

A typical workflow is to look at others’ visualizations, find something that can be improved, then load that visualization and make improvements, finally upload the improved version. Besides making improvements, we also enable users to merge visualizations. If the user find two visualizations that can be merged into one compact version, she will load the first one, then merge the second one with it and make some changes to synthesize the merged version, finally upload it.

Merging Visuliazations
Merging Visuliazations

We use the lower triangle of the correlation matrix discussed above to show the number of visualizations for each pair of dimensions, giving the user a sense of what dimensions or pairs of dimensions has already been explored. When the user double-click a cell, the system shows a list of visualizations containing that pair of dimensions (by containing either a scatterplot or a link between them).

A visualization search engine is built to search for related visualizations. It works by converting a visualization into a set of components. For example a visualization containing two axes for dimensions A and B, and a scatterplot between them is interpreted as Axis(A), Axis(B) and Scatterplot(Axis(A), Axis(B)), regardless of the exact position of these components. These components can then be indexed and searched with existing methods.

In addition, we implemented a realtime notification system, it informs the user when someone follows or make comments to one of her visualizations. We hope that it can help users to work together more efficiently.


  1. Claessen, Jarry H. T. and van Wijk, Jarke J., Flexible Linked Axes for Multivariate Data Visualization, IEEE Transactions on Visualization and Computer Graphics, 2011  ↩

  2. Reshef, David N. and Reshef, Yakir A. and Finucane, Hilary K. and Grossman, Sharon R. and McVean, Gilean and Turnbaugh, Peter J. and Lander, Eric S. and Mitzenmacher, Michael and Sabeti, Pardis C., Detecting Novel Associations in Large Data Sets, Science, 2011  ↩