Counterpoint: Orchestrating Large-Scale Custom Animated Visualizations

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Sivaraman, Venkatesh, Elavsky, Frank, Moritz, Dominik, Perer, Adam
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866910639038922752
author Sivaraman, Venkatesh
Elavsky, Frank
Moritz, Dominik
Perer, Adam
author_facet Sivaraman, Venkatesh
Elavsky, Frank
Moritz, Dominik
Perer, Adam
contents Custom animated visualizations of large, complex datasets are helpful across many domains, but they are hard to develop. Much of the difficulty arises from maintaining visualization state across many animated graphical elements that may change in number over time. We contribute Counterpoint, a framework for state management designed to help implement such visualizations in JavaScript. Using Counterpoint, developers can manipulate large collections of marks with reactive attributes that are easy to render in scalable APIs such as Canvas and WebGL. Counterpoint also helps orchestrate the entry and exit of graphical elements using the concept of a rendering "stage." Through a performance evaluation, we show that Counterpoint adds minimal overhead over current high-performance rendering techniques while simplifying implementation. We provide two examples of visualizations created using Counterpoint that illustrate its flexibility and compatibility with other visualization toolkits as well as considerations for users with disabilities. Counterpoint is open-source and available at https://github.com/cmudig/counterpoint.
format Preprint
id arxiv_https___arxiv_org_abs_2410_05645
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Counterpoint: Orchestrating Large-Scale Custom Animated Visualizations
Sivaraman, Venkatesh
Elavsky, Frank
Moritz, Dominik
Perer, Adam
Graphics
Human-Computer Interaction
Custom animated visualizations of large, complex datasets are helpful across many domains, but they are hard to develop. Much of the difficulty arises from maintaining visualization state across many animated graphical elements that may change in number over time. We contribute Counterpoint, a framework for state management designed to help implement such visualizations in JavaScript. Using Counterpoint, developers can manipulate large collections of marks with reactive attributes that are easy to render in scalable APIs such as Canvas and WebGL. Counterpoint also helps orchestrate the entry and exit of graphical elements using the concept of a rendering "stage." Through a performance evaluation, we show that Counterpoint adds minimal overhead over current high-performance rendering techniques while simplifying implementation. We provide two examples of visualizations created using Counterpoint that illustrate its flexibility and compatibility with other visualization toolkits as well as considerations for users with disabilities. Counterpoint is open-source and available at https://github.com/cmudig/counterpoint.
title Counterpoint: Orchestrating Large-Scale Custom Animated Visualizations
topic Graphics
Human-Computer Interaction
url https://arxiv.org/abs/2410.05645