Journal article

Linked visualisations via Galois dependencies
R. Perera, M. Nguyen, T. Petříček, M. Wang
Proceedings of the ACM on Programming Languages 6 (POPL)

We present new language-based dynamic analysis techniques for linking visualisations and other structured outputs to data in a fine-grained way, allowing users to explore how data attributes and visual or other output elements are related by selecting (focusing on) substructures of interest. Our approach builds on bidirectional program slicing techiques based on Galois connections, which provide desirable round-tripping properties. Unlike the prior work, our approach allows selections to be negated, equipping the bidirectional analysis with a De Morgan dual which can be used to link different outputs generated from the same input. This offers a principled language-based foundation for a popular view coordination feature called brushing and linking where selections in one chart automatically select corresponding elements in another related chart.

    title = {{Linked visualisations via Galois dependencies}},
    author = {Perera, Roly and Nguyen, Minh and Petricek, Tomas and Wang, Meng},
    year = {2022},
    journal = {{Proceedings of the ACM on Programming Languages}},
    number = {POPL},
    doi = {10.1145/3498668},
    pages = {7:1--7:29},
    volume = {6},