Table of Contents
Fetching ...

PI2: End-to-end Interactive Visualization Interface Generation from Queries

Yiru Chen, Eugene Wu

TL;DR

PI2 is the first system to generate fully functional interactive visualization interfaces from a representative sequence of task queries, and user studies show thatPI2 interfaces are comparable to or better than those designed by developers, and that PI2 can generate exploration interfaces that are easier to use than the state-of-the-art SQL notebook products.

Abstract

Interactive visual analysis interfaces are critical in nearly every data task. However, creating new interfaces is deeply challenging, as it requires the developer to understand the queries needed to express the desired analysis task, design the appropriate interface to express those queries for the task, and implement the interface using a combination of visualization, browser, server, and database technologies. Although prior work generates a set of interactive widgets that can express an input query log, this paper presents PI2, the first system to generate fully functional visual analysis interfaces from an example sequence of analysis queries. PI2 analyzes queries syntactically and represents a set of queries using a novel Difftree structure that encodes systematic variations between query abstract syntax trees. PI2 then maps each Difftree to a visualization that renders its results, the variations in each Difftree to interactions, and generates a good layout for the interface. We show that PI2 can express data-oriented interactions in existing visualization interaction taxonomies, reproduce or improve several real-world visual analysis interfaces, generate interfaces in 2-19s (median 6s), and scale linearly with the number of queries.

PI2: End-to-end Interactive Visualization Interface Generation from Queries

TL;DR

PI2 is the first system to generate fully functional interactive visualization interfaces from a representative sequence of task queries, and user studies show thatPI2 interfaces are comparable to or better than those designed by developers, and that PI2 can generate exploration interfaces that are easier to use than the state-of-the-art SQL notebook products.

Abstract

Interactive visual analysis interfaces are critical in nearly every data task. However, creating new interfaces is deeply challenging, as it requires the developer to understand the queries needed to express the desired analysis task, design the appropriate interface to express those queries for the task, and implement the interface using a combination of visualization, browser, server, and database technologies. Although prior work generates a set of interactive widgets that can express an input query log, this paper presents PI2, the first system to generate fully functional visual analysis interfaces from an example sequence of analysis queries. PI2 analyzes queries syntactically and represents a set of queries using a novel Difftree structure that encodes systematic variations between query abstract syntax trees. PI2 then maps each Difftree to a visualization that renders its results, the variations in each Difftree to interactions, and generates a good layout for the interface. We show that PI2 can express data-oriented interactions in existing visualization interaction taxonomies, reproduce or improve several real-world visual analysis interfaces, generate interfaces in 2-19s (median 6s), and scale linearly with the number of queries.

Paper Structure

This paper contains 11 sections, 7 figures, 1 table.

Figures (7)

  • Figure 1: Comparison between prior and this work. (b) Prior work generates an unordered set of interaction widgets that express the two queries. (c) This paper presents a novel model that accounts for widgets, layouts, and interactive visualizations, and generate fully interactive interfaces.
  • Figure 2: Example of three queries and their simplified ASTs. A static interface would render one chart for each query.
  • Figure 3: Three examples of Difftrees for Q1, Q2, focusing on the subtree for the predicate. The ANY choice node can choose one of its children. (a) Each predicate can be chosen using a radio button that parameterizes the ANY node, (b) the left and right operands can be individually chosen using radio buttons, (c) the literal operand is generalized beyond the input values 1 and 2.
  • Figure 4: A Difftree for Q1-3 and a candidate interface.
  • Figure 5: Multi-view interface where clicking on the right-side chart updates the left chart.
  • ...and 2 more figures

Theorems & Definitions (4)

  • Example 1
  • Example 2: Node Types
  • Example 3
  • Example 4