Manipulable Semantic Components: a Computational Representation of Data Visualization Scenes
Zhicheng Liu, Chen Chen, John Hooker
TL;DR
MSC offers a unified computational representation for data-visualization scenes by coupling a generic object model of semantic components with a comprehensive set of generative and modificative operations. It enables three core applications—interactive authoring, deconstruction/reuse, and animation augmentation—through Mascot.js, a practical JavaScript implementation that serializes scenes to JSON and supports SVG/WebGL rendering. The framework captures detailed structural elements (marks, groups, encodings, layouts, constraints, and view configuration) and procedural steps (initialize, join, encode, layout, constrain, and view adjustments) to build and adapt visualizations. By contrast with DOM-based, declarative, and algebraic frameworks, MSC emphasizes a bottom-up, scene-centric approach that facilitates direct manipulation, rapid iteration, and robust reuse of visualization components, with future work on runtime interactions and knowledge extraction from MSC descriptions.
Abstract
Various data visualization applications such as reverse engineering and interactive authoring require a vocabulary that describes the structure of visualization scenes and the procedure to manipulate them. A few scene abstractions have been proposed, but they are restricted to specific applications for a limited set of visualization types. A unified and expressive model of data visualization scenes for different applications has been missing. To fill this gap, we present Manipulable Semantic Components (MSC), a computational representation of data visualization scenes, to support applications in scene understanding and augmentation. MSC consists of two parts: a unified object model describing the structure of a visualization scene in terms of semantic components, and a set of operations to generate and modify the scene components. We demonstrate the benefits of MSC in three applications: visualization authoring, visualization deconstruction and reuse, and animation specification.
