Prefuse: A Toolkit for Interactive Information Visualization Jeffrey Heer Stuart K. Card James A. Landay CHI2005.

Slides:



Advertisements
Similar presentations
Apache Struts Technology
Advertisements

Introduction to Eclipse plugin development for CSU 670 course project, Selector language (Xaspect) editor plugin implementation.
Prefuse: A Toolkit for Interactive Information Visualization Heer, J., Card, S.K., Landay, J.A. Presented by Julia West.
The Last Procedure Before First Functional Prototype Grant Boomer, Brett Papineau, Tanis Lopez, Archana Shrestha CS 383.
© by Pearson Education, Inc. All Rights Reserved.
Visual Basic 2010 How to Program. © by Pearson Education, Inc. All Rights Reserved.2.
Visual Basic 2010 How to Program Reference: Instructor: Maysoon Bin Duwais slides Visual Basic 2010 how to program by Deitel © by Pearson Education,
Abstract Syntax Tree Rendering Noah Brickman CMPS 203.
Introduction To System Analysis and Design
AJAX Presented by: Dickson Fu Dimas Ariawan Niels Andreassen Ryan Dial Jordan Nielson CMPUT 410 University of Alberta 2006.
NAV Project Update By: Meghan Allen and Peter McLachlan.
Fast Track to ColdFusion 9. Getting Started with ColdFusion Understanding Dynamic Web Pages ColdFusion Benchmark Introducing the ColdFusion Language Introducing.
Interactive Visualization of the Stock Market Graph Presented by Camilo Rostoker Department of Computer Science University of British.
Visualizing Social Networks Louis Licamele & Mustafa Bilgic.
1 SIMS 247: Information Visualization and Presentation Software Architectures for Information Visualization Oct 17, 2005.
December 19, 2005Presented By: Shawn Minto Mylog By Shawn Minto.
Tuple – InfoVis Publication Browser CS533 Project Presentation by Alex Gukov.
Chapter 9 Introduction to the Document Object Model (DOM) JavaScript, Third Edition.
Stanford hci group / cs376 research topics in human-computer interaction I/O Toolkits Scott Klemmer 29 November 2005.
1 An Introduction to Visual Basic Objectives Explain the history of programming languages Define the terminology used in object-oriented programming.
© 2008 IBM Corporation Behavioral Models for Software Development Andrei Kirshin, Dolev Dotan, Alan Hartman January 2008.
Component-based Authoring of Complex, Petri net-based Digital Library Infrastructure Yung Ah Park, Unmil P. Karadkar, and Richard Furuta Department of.
1 ParaView Current Architecture and History Current Architecture and History Issues with the Current Design Issues with the Current Design.
1 CS101 Introduction to Computing Lecture 19 Programming Languages.
2. Introduction to the Visual Studio.NET IDE 2. Introduction to the Visual Studio.NET IDE Ch2 – Deitel’s Book.
Introduction to Java Swing “We are the sultans of swing” – Mark Knopfler.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
By LaBRI – INRIA Information Visualization Team. Tulip 2010 – version Tulip is an information visualization framework dedicated to the analysis.
Zubanov Alexei, 2006 Aug 07 – Sep 28 QtROOT package extension with Coin3D lib.
Microsoft Visual Basic 2005: Reloaded Second Edition
Operating Systems.  Operating System Support Operating System Support  OS As User/Computer Interface OS As User/Computer Interface  OS As Resource.
Zhonghua Qu and Ovidiu Daescu December 24, 2009 University of Texas at Dallas.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Getting to Know TiVo: The Home Media Engine (HME SDK) Eric M. Upchurch CS 525 Spring 2008.
COMP 410 & Sky.NET May 2 nd, What is COMP 410? Forming an independent company The customer The planning Learning teamwork.
Deutsches Elektronen-Synchrotron DESY Helmholtz Association of German Research Centres Hamburg, Germany The European X-Ray Laser Project.
IE 411/511: Visual Programming for Industrial Applications
PLATFORM INDEPENDENT SOFTWARE DEVELOPMENT MONITORING Mária Bieliková, Karol Rástočný, Eduard Kuric, et. al.
Software Design Patterns for Information Visualization 薛乃榮 Q NCBCI LAB.
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
Introduction to Eclipse Plug-in Development. Who am I? Scott Kellicker Java, C++, JNI, Eclipse.
Tutorial 111 The Visual Studio.NET Environment The major differences between Visual Basic 6.0 and Visual Basic.NET are the latter’s support for true object-oriented.
Introduction To System Analysis and Design
Visual Analysis of Hierarchical Management Data Zhao Geng 1, Gaurav Gathania 2, Robert S.Laramee 1 and ZhenMin Peng 1 1 Visual Computing Group, Computer.
Drupal Commerce Better than Uber Andrew Root: druroot.
CHAPTER TEN AUTHORING.
Vizster: Visualizing Online Social Networks Authors: Jeffrey Heer and Danah Boyd Presented by: Jeanne Kramer-Smyth Machon Gregory.
Selected Topics in Software Engineering - Distributed Software Development.
ProtoVis Peter Sikachev Institute of Computer Graphics and Algorithms Vienna University of Technology.
Visualization of Message Passing By: Jesse Szwedko.
ASP (Active Server Pages) by Bülent & Resul. Presentation Outline Introduction What is an ASP file? How does ASP work? What can ASP do? Differences Between.
Java Beans. Definitions A reusable software component that can be manipulated visually in a ‘builder tool’. (from JavaBean Specification) The JavaBeans.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
Introduction to Interactive Media Interactive Media Tools: Authoring Applications.
Discovering occurrences of user-defined patterns in historical data representing collaborative activities in virtual user environment Jozef Wagner František.
Visualization Four groups Design pattern for information visualization
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
 2002 Prentice Hall. All rights reserved. 1 Chapter 2 – Introduction to the Visual Studio.NET IDE Outline 2.1Introduction 2.2Visual Studio.NET Integrated.
Object-Oriented Application Development Using VB.NET 1 Chapter 2 The Visual Studio.NET Development Environment.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
SEESCOASEESCOA SEESCOA Meeting Activities of LUC 9 May 2003.
CHAPTER 4 Fragments ActionBar Menus. Explore how to build applications that use an ActionBar and Fragments Understand the Fragment lifecycle Learn to.
Part of the Microsoft.NET Framework 3.0 Tomer Shamam.NET Technologies Expert Sela Group
ECLIPSE RICH CLIENT PLATFORM Part 1 Introduction.
Papier-Mache: Toolkit Support for Tangible Input HCI Group University of California Scott R. Klemmer Jack Li James Lin DUB Group University of Washington.
Haritha Dasari Josue Balandrano Coronel -
Jim Fawcett CSE776 – Design Patterns Summer 2003
I/O Toolkits Scott Klemmer · 16 November 2006.
Presentation transcript:

prefuse: A Toolkit for Interactive Information Visualization Jeffrey Heer Stuart 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? CHI2005