🤖 AI Summary
Network visualization suffers from fragmentation, requiring coupling of disparate libraries for analysis, layout, and rendering. To address this, we propose NetPanorama—a declarative domain-specific language (DSL) designed specifically for network visualization. NetPanorama unifies the entire workflow—from network construction and transformation to visualization—natively supporting multivariate, temporal, and geospatial networks. It introduces the first cross-paradigm syntax consistent across node-link diagrams, adjacency matrices, arc diagrams, NodeTrix, and other representations. The DSL embeds analytical operations, automated layout algorithms, multidimensional visual encoding (e.g., glyphs, faceting, labeling), and interactive primitives. Its open-source implementation includes a web-based editor and comprehensive documentation, eliminating dependencies on multiple external libraries. NetPanorama enables over ten classes of complex network visualizations, significantly improving exploratory efficiency and data storytelling agility.
📝 Abstract
This paper introduces NetPanorama, a domain-specific language and declarative grammar for interactive network visualization design that supports multivariate, temporal, and geographic networks. NetPanorama allows users to specify network visualizations as combinations of primitives and building blocks. These support network creation and transformation, including computing metrics; orderings, seriations and layouts; visual encodings, including glyphs, faceting, and label visibility; and interaction for exploration and modifying styling. This approach allows the creation of a range of visualizations including many types of node-link diagrams, adjacency matrices using diverse cell encodings and node orderings, arc diagrams, PivotGraph, small multiples, time-arcs, geographic map visualizations, and hybrid techniques such as NodeTrix. NetPanorama aims to remove the need to use multiple libraries for analysis, wrangling, and visualization. Consequently, NetPanorama supports the agile development of applications for visual exploration of networks and data-driven storytelling. Documentation, source code, further examples, and an interactive online editor can be found online: https://netpanorama.netlify.app/.