Declarative language design for interactive visualization
Related Experiment Video
Updated: Jun 7, 2026

Automated Interactive Video Playback for Studies of Animal Communication
Published on: February 9, 2011
Jeffrey Heer1, Michael Bostock
1Computer Science Department, Stanford University, Stanford, CA 94305, USA. jheer@cs.stanford.edu
Abstract:
We investigate the design of declarative, domain-specific languages for constructing interactive visualizations. By separating specification from execution, declarative languages can simplify development, enable unobtrusive optimization, and support retargeting across platforms. We describe the design of the Protovis specification language and its implementation within an object-oriented, statically-typed programming language (Java). We demonstrate how to support rich visualizations without requiring a toolkit-specific data model and extend Protovis to enable declarative specification of animated transitions. To support cross-platform deployment, we introduce rendering and event-handling infrastructures decoupled from the runtime platform, letting designers retarget visualization specifications (e.g., from desktop to mobile phone) with reduced effort. We also explore optimizations such as runtime compilation of visualization specifications, parallelized execution, and hardware-accelerated rendering. We present benchmark studies measuring the performance gains provided by these optimizations and compare performance to existing Java-based visualization tools, demonstrating scalability improvements exceeding an order of magnitude.
More Related Videos
10:44Inherent Dynamics Visualizer, an Interactive Application for Evaluating and Visualizing Outputs from a Gene Regulatory Network Inference Pipeline
Published on: December 7, 2021
08:35Interactive and Visualized Online Experimentation System for Engineering Education and Research
Published on: November 24, 2021
Related Concept Videos
Design Example: Setting a Curve Using Design Data
pV-Diagrams
Design Example: Designing Water Slide
Bernoulli's principle determines the water's velocity along the slide.
Methods of Documentation IV: Focus Charting
It typically involves three columns for recording information:
Design Example
Bar Graph