Vega-Lite: A Grammar of Interactive Graphics
Published at
InfoVis
| Baltimore, MD, USA
2017
- Best Paper Award
Vega-Lite is a declarative language for visualization and interaction.
Abstract
We present Vega-Lite, a high-level grammar that enables rapid specification of
interactive data visualizations. Vega-Lite combines a traditional grammar of
graphics, providing visual encoding rules and a composition algebra for layered
and multi-view displays, with a novel grammar of interaction. Users specify
interactive semantics by composing selections. In Vega-Lite, a selection is an
abstraction that defines input event processing, points of interest, and a
predicate function for inclusion testing. Selections parameterize visual
encodings by serving as input data, defining scale extents, or by driving
conditional logic. The Vega-Lite compiler automatically synthesizes requisite
data flow and event handling logic, which users can override for further
customization. In contrast to existing reactive specifications, Vega-Lite
selections decompose an interaction design into concise, enumerable semantic
units. We evaluate Vega-Lite through a range of examples, demonstrating succinct
specification of both customized interaction methods and common techniques such
as panning, zooming, and linked selection.