Draco: Formalizing Visualization Design Knowledge as Constraints

We are organizing a meetup at Vis 2018 in Berlin. Email Dominik if you want to attend.

Draco is a formal framework for representing design knowledge about effective visualization design as a collection of constraints.

You can use Draco to find effective visualization designs in Vega-Lite. Draco's constraints are implemented in based on Answer Set Programming (ASP) and solved with the Clingo constraint solver. Draco can learn weights for the recommendation system directly from the results of graphical perception experiments.

Code Knowledge Base Online Editor JavaScript Module


Formalizing Visualization Design Knowledge as Constraints: Actionable and Extensible Models in Draco, InfoVis Best Paper, 2018

Draco: Representing, Applying & Learning Visualization Design Guidelines, Blog Post


You can learn about the Draco knowledge base in the Draco code. Documentation about the APIs is coming soon.


Draco is being developed at the Interactive Data Lab at the University of Washington. The main contributors are: Dominik Moritz, Chenglong Wang, Greg L. Nelson, Halden Lin, Adam M. Smith, Bill Howe, and Jeffrey Heer.