prefuse : A Toolkit for Interactive Information Visualization

Preview:

DESCRIPTION

prefuse : A Toolkit for Interactive Information Visualization. Jeffrey Heer Stuart K. Card James A. Landay. Outline. Motivation Introduction Design of Prefuse Build Application with Prefuse Evaluation Summary. Motivation. Infovis is indispensable Find hidden patterns in data - PowerPoint PPT Presentation

Citation preview

CHI2005

prefuse: A Toolkit for Interactive Information Visualization

Jeffrey HeerStuart K. Card

James A. Landay

CHI2005

Outline

• Motivation• Introduction• Design of Prefuse• Build Application with Prefuse• Evaluation• Summary

CHI2005

Motivation

• Infovis is indispensable– Find hidden patterns in data– Interaction with visualized info

• Still lack of infovis app– Difficult to provide domain-specific config– Difficult to build• Complex layout• Dynamic graphics

CHI2005

Motivation

• Previous work– TreeMaps– Cone Trees– Hyperbolic Trees– DOITrees– SpaceTrees– Perspective Walls– StarField displays

CHI2005

TreeMap

CHI2005

Hyperbolic Trees

CHI2005

DOITree

CHI2005

SpaceTrees

CHI2005

Perspective Walls

CHI2005

StarField displays

CHI2005

Motivation

• Current work– Explorer designs and techniques

• Similar project• Infovis-specific toolkits (monolithic)

– Fekete's InfoVis toolkit– Indiana's XML toolkit

• Lib of existing visualization• Without set of reusable components

CHI2005

Motivation

• Need a toolkit

– Diversity customization support– Handle complex layout and graphics– Animation handling– Introduce new functionalities– Reusable

CHI2005

Outline

• Motivation• Introduction• Design of Prefuse• Build Application with Prefuse• Evaluation• Summary

CHI2005

Introduction to prefuse

• Written in Java• Extensible UI toolkit• Interactive display• Not ready-made infovis “widgets”• A set of building blocks• Basic data structure on graph– Entities– Relations

CHI2005

Outline

• Motivation• Introduction• Design of Prefuse• Build Application with Prefuse• Evaluation• Summary

CHI2005

Design of Prefuse

• Information Visualization Reference Model

– Abstract data representation– Map data into a visualizable form– Process the form– Map into interactive displays

CHI2005

Design of Prefuse

CHI2005

Design of Prefuse--Abstract Data

• Interface for data structure• Basic element—Entity

– Named attributes– Base class for structural type

» Node» TreeNode» Edge» …

• Interface for data io• Bounded visualization to fit in memory

CHI2005

Design of Prefuse--Filtering

• Filtering can make visualization-specific model– Multiple visualizations of a data set– Different views of a specific visualization

• Filtering process– Select a set of abstract data elements– Generate visual items• Attributes of source data• Visual properties

CHI2005

Design of Prefuse—Visual Items

• Three types of VisualItems

– NodeItems

– EdgeItems

– AggregateItems

CHI2005

Design of Prefuse—Visual Items

• ItemRegistry– Data structure which stores visual items– Houses states of visualization– Request by filter action– Contains FoucsManager– Caching approach– Recycle

CHI2005

Design of Prefuse—Actions

• Basic component of application design

– Update visual items in ItemRegistry– Select visualized data, set visual properties– Simple API– Perform arbitrary tasks

CHI2005

Design of Prefuse—Actions

• Actions Types

– Filter

– Assignment

– Animator

CHI2005

Design of Prefuse—ActionLists

• ActionList is a list of actions

• Can be subroutine of other list

• Can run once or more

• Execution is managed by scheduler

CHI2005

Design of Prefuse—ActionLists

• Example

CHI2005

Design of Prefuse—Render

• Renders draw VisualItems– Take use of item’s visual attributes– Simple API

• RenderFactory manages mapping between items and appearences– Return a Render given a visualitem– High flexbility– Easy change to visual appearance

CHI2005

Design of Prefuse—Display

• Perform presentation of visualized data

• Display the contents of ItemRegistry

• Subclass JComponent

• Interaction support (ControlListener)

CHI2005

Design of Prefuse—Library

• Layout and Distortion• Force Simulation• Interactive Controls• Color Maps• Integrated Search• Event Logging

CHI2005

Design of Prefuse—Sample Application

CHI2005

Design of Prefuse—Evaluation 1

• Build two novel visualizations– Degree of Interest Tree– Vizster

• Reuse and extensibility

• Accelerated implementation times

• Maintain real-time interaction and animation over lots of data elements

CHI2005

Design of Prefuse—Evaluation 2

• Understand the learnability of prefuse for other programmers

• 8 participants

• Build applications and take interview

CHI2005

Design of Prefuse—Evaluation 2

• 8 participants– 4 CS students• 2 undergrads• 2 grads

– 3 professional programmers– 1 UI designer– 1 infovis expert

CHI2005

Design of Prefuse—Evaluation 2

• Give a tutorial • Give a social network data file• Three programming tasks (PC, Eclipse IDE,

prefuse source code)– Static visualization– Refine visualization– Add interactivity and animation

• Open-ended interview

CHI2005

Design of Prefuse—Evaluation 2

• Positive reactions

CHI2005

Summary

• Prefuse brings quick development and flexible and customized visualization

• Prefuse supports the design of 2D, what about 3D?

• Take use of it in Search Results Visualization

• Is it possible to map music into visualization using prefuse?

CHI2005

The end

Thank you!

Any question?

Recommended