Font Size: a A A

Design and implementation of a stream-based visualization language

Posted on:2012-06-08Degree:Ph.DType:Thesis
University:Indiana UniversityCandidate:Cottam, Joseph AFull Text:PDF
GTID:2468390011968705Subject:Computer Science
Abstract/Summary:
Information visualization tools are proliferating, with language and library-based visualization tools serving scientific, business and artistic endeavors. While partial formalizations of these tools exist, many details are unspecified. This leaves the tools as ad hoc implementations of ephemeral ideas.;This thesis presents Stencil, a domain-specific language for specifying visualizations that has a well-founded basis. Stencil has a formal semantics that establish testable conditions for resource-bounded and deterministic execution. The semantics enable treatment of dynamic data in a principled fashion. Internal consistency of a visualization id defined in terms of these semantics and the implementation is shown to maintain that consistency. Stencil includes a task-parallel execution model that dramatically improves runtimes when working with dynamic data. The improvements are realized by application of the semantics to reason about the runtime, and employing persistent data structures to provide noninterference.;As a domain-specific language, Stencil enables compact description of visualization programs. The key to providing this compactness is the Stencil compiler's ability to infer contextual information. Contextual inference avoids restatement of program constructs and allows guarantees about the inferred information. This contextual inference is used to create axes, legends and other guide structures in a fashion that is guaranteed to reflect both the corresponding analysis and the input data.;The lessons learned developing the Stencil system are applicable to other visualization frameworks. For example, other libraries can employ the data structures implemented for Stencil. More importantly, the formalisms presented provide a basis to define and test properties of a visualization framework implementation. This thesis demonstrates the feasibility of treating visualization programs in a principled fashion and some of the benefits (including greater performance and reduced programming effort) of doing so.
Keywords/Search Tags:Visualization, Language, Implementation, Tools
Related items