Marti Hearst SIMS 247 SIMS 247 Lecture 9 Distortion-based Views February 17, 1998.

Slides:



Advertisements
Similar presentations
Great Theoretical Ideas in Computer Science
Advertisements

H3: Laying Out Large Directed Graphs in 3D Hyperbolic Space Tamara Munzner, Stanford University.
2/14/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Planar Subdivisions and Point Location Carola Wenk Based on: Computational.
Greedy Algorithms Greed is good. (Some of the time)
Point-and-Line Problems. Introduction Sometimes we can find an exisiting algorithm that fits our problem, however, it is more likely that we will have.
SE 313 – Computer Graphics Lecture 14: Armatures Lecturer: Gazihan Alankuş 1.
Converging Lenses Graphical Analysis By Chris Cho and Dan Fan.
Tutorial 5: Working with Excel Tables, PivotTables, and PivotCharts
Information Visualization Focus + Context Fengdong Du.
1 i247: Information Visualization and Presentation Marti Hearst Interactive Visualization.
Great Theoretical Ideas in Computer Science.
Abstract Syntax Tree Rendering Noah Brickman CMPS 203.
1 Presented by Jean-Daniel Fekete. 2  Motivation  Mélange [Elmqvist 2008] Multiple Focus Regions.
1 Balloon Views of Source Code and Their Multiscalable Font Modes Chun-Cheng Lin and Hsu-Chun Yen Dept. of Electrical Engineering, National Taiwan University.
Lists A list is a finite, ordered sequence of data items. Two Implementations –Arrays –Linked Lists.
Marti Hearst SIMS 247 SIMS 247 Lecture 24 Course Recap April 30, 1998.
Graphs and Trees This handout: Trees Minimum Spanning Tree Problem.
Fractal Approaches for Visualizing Huge Hierarchies Hideki Koike, Hirotaka Yoshihara Department of Communications and Systems University of Electro-Communications.
Cone Trees and Collapsible Cylindrical Trees
The Table Lens: Merging Graphical and Symbolic Representations in an Interactive Focus + Context Visualization for Tabular Information R. Rao and S. K.
Matthias Mayer The Table Lens - Ramana Rao & Stuart K. Card Information Visualization 838b - February 21st 2001 The Table Lens: Merging.
1 i247: Information Visualization and Presentation Marti Hearst April 14, 2008.
SIMS 247 Information Visualization and Presentation Marti Hearst October 24, 2000.
Marti Hearst SIMS 247 SIMS 247 Lecture 10 More on Distortion-based Views How many ways to show a graph? February 19, 1998.
Hyperbolic Brower  Focus+Context browsing of large hierarchies  Inspired by Escher  Intuitive Nodes in center are more important, and therefore larger.
Marti Hearst SIMS 247 SIMS 247 Lecture 16 Pan and Zoom March 12, 1998.
1 SIMS 247: Information Visualization and Presentation Marti Hearst Oct 3, 2005.
Chapter 17 Optics 17.1 Reflection and Refraction
2-D: Focus+Context cs5984: Information Visualization Chris North.
By LaBRI – INRIA Information Visualization Team. Tulip 2010 – version Tulip is an information visualization framework dedicated to the analysis.
Exploratory Data Analysis. Computing Science, University of Aberdeen2 Introduction Applying data mining (InfoVis as well) techniques requires gaining.
Lecture 2 Geometric Algorithms. A B C D E F G H I J K L M N O P Sedgewick Sample Points.
Screens appear here to display the: Data Tables Plots Bibliographic Info Add New Data Form, Molecular Structure-Drawing Form ‘Tree’ for navigation between.
Minimal Spanning Trees What is a minimal spanning tree (MST) and how to find one.
Lecture 19 Representation and description II
Crossing Minimisation (1) Ronald Kieft. Global contents Specific 2-layer Crossing Minimisation techniques After the break, by Johan Crossing Minimisation.
Lecture 12: Network Visualization Slides are modified from Lada Adamic, Adam Perer, Ben Shneiderman, and Aleks Aris.
A Focus+Context Technique Based on Hyperbolic Geometry for Visualizing Large Hierarchies. John Lamping, Ramana Rao, and Peter Pirolli Xerox Palo Alto Research.
1 Human Computer Interaction Week 12 Information Search & Visualization.
Information Visualization –III Treemaps and Fisheye Views.
IAT 814 Trees Chapter 3.2 of Spence ______________________________________________________________________________________ SCHOOL OF INTERACTIVE ARTS +
Lecture 17 Trees CSCI – 1900 Mathematics for Computer Science Fall 2014 Bill Pine.
Real-time Graphics for VR Chapter 23. What is it about? In this part of the course we will look at how to render images given the constrains of VR: –we.
Fall 2002CS/PSY Information Visualization 2 Case Study: Portraying Hierarchies Visualizing hierarchies  Variety of techniques Traditional tree views,
Graph Visualization and Beyond … Anne Denton, April 4, 2003 Including material from a paper by Ivan Herman, Guy Melançon, and M. Scott Marshall.
Hyperbolic Trees A Focus + Context Technique John lamping Ramana Rao Peter Pirolli Joy Mukherjee.
Innovative UI Ideas Marti Hearst SIMS 213, UI Design & Development April 20, 1999.
Visualizing LiveNet with ENCCON Model Quang Vinh Nguyen Computer Systems Department Faculty of Information Technology University of Technology, Sydney.
1D & 2D Spaces for Representing Data Mao Lin Huang.
Graphs A ‘Graph’ is a diagram that shows how things are connected together. It makes no attempt to draw actual paths or routes and scale is generally inconsequential.
Lecture 6 Rasterisation, Antialiasing, Texture Mapping,
Trees Dr. Yasir Ali. A graph is called a tree if, and only if, it is circuit-free and connected. A graph is called a forest if, and only if, it is circuit-free.
Data Structures Lakshmish Ramaswamy. Tree Hierarchical data structure Several real-world systems have hierarchical concepts –Physical and biological systems.
CHAPTER 11 TREES INTRODUCTION TO TREES ► A tree is a connected undirected graph with no simple circuit. ► An undirected graph is a tree if and only.
Digital Media Lecture 5: Vector Graphics Georgia Gwinnett College School of Science and Technology Dr. Jim Rowan.
Inspired from CS Information Visualization Jan. 10, 2002 John Stasko Frédéric Vernier Enseignant-Chercheur LIMSI-CNRS Maître de conf Paris XI Cours.
Tree - in “math speak” An ________ graph is a set of vertices/nodes and a set of edges, each edge connects two vertices. Any undirected graph in which.
Microsoft ® Excel ® 2013 Enhanced Tutorial 5: Working with Excel Tables, PivotTables, and PivotCharts.
Computer Graphics Lecture 08 Taqdees A. Siddiqi Computer Graphics Filled Area Primitives I Lecture 08 Taqdees A. Siddiqi
Comp 15 - Usability & Human Factors Unit 12b - Information Visualization This material was developed by Columbia University, funded by the Department of.
Great Theoretical Ideas In Computer Science
We propose a method which can be used to reduce high dimensional data sets into simplicial complexes with far fewer points which can capture topological.
IAT 355 Trees2 ______________________________________________________________________________________.
Graph theory Definitions Trees, cycles, directed graphs.
Hierarchies (Trees) Definition Examples
cs5764: Information Visualization Chris North
Mesh Control using Size Functions and Boundary Layers
Lecture 2 Geometric Algorithms.
Richard Anderson Lecture 5 Graph Theory
Presentation transcript:

Marti Hearst SIMS 247 SIMS 247 Lecture 9 Distortion-based Views February 17, 1998

Marti Hearst SIMS 247 Today Distortion-based viewsDistortion-based views –focus+context – views –intro to graphs

Marti Hearst SIMS 247 Viewing Huge Datasets Problem:Problem: –The computer display is a small window through which to view huge datasets Standard Solution:Standard Solution: –Display a portion at a time Problems: lose the context, get lost, comparisons are difficult,... Alternative Solution:Alternative Solution: –Focus + Context

Marti Hearst SIMS 247 Focus + Context Another solution:Another solution: –Use pixels more carefully Focus + ContextFocus + Context –Show a lot of information at once Details are too small to be visible –Focus on a subset of interest Make this subset large enough to be viewed

Marti Hearst SIMS 247 Table Lens (Rao & Card 94) Focus on the records of interestFocus on the records of interest Context: other recordsContext: other records –depicted graphically –view patterns in both nominal and quantititive data types –interaction via sorting for pattern discovery –nearly keyboardless interface

Marti Hearst SIMS 247 Viewing Huge Tables: Table Lens (Rao & Card 94)

Marti Hearst SIMS 247 Focus + Context Data Types TablesTables HierarchiesHierarchies NetworksNetworks MapsMaps Artificial “worlds”Artificial “worlds”

Marti Hearst SIMS 247 Views Views A variation on Focus + ContextA variation on Focus + Context –Make objects of interest large, detailed –Less important objects successively smaller Goal:Goal: –Smooth integration of local detail and global context Technique:Technique: –Reposition and resize objects

Marti Hearst SIMS 247 Noik’s Demonstration

Marti Hearst SIMS 247 Elements of Fisheye Views Focus, or Point of Interest (POI)Focus, or Point of Interest (POI) –user-selected Importance Function (API)Importance Function (API) –user-specified or pre-determined number of railway connections height in hierarchy population of city Function for measuring distance between objectsFunction for measuring distance between objects

Marti Hearst SIMS 247 Sarkar & Brown 94 Paris Metro, importance corresponds to number of connections

Marti Hearst SIMS 247 Determining Layout User selects focusUser selects focus –As user drags mouse, display changes For each object: size, position, and amount of detail depend on:For each object: size, position, and amount of detail depend on: –distortion factor –object’s “normal” size and position –distance of object from focus (POI) –pre-assigned importance value –other user-controlled parameters (optional)

Marti Hearst SIMS 247 Graphs An interlude: basic properties of graphsAn interlude: basic properties of graphs See Cruz and Tammasia tutorial for an update on the state of the art in graph layout strategiesSee Cruz and Tammasia tutorial for an update on the state of the art in graph layout strategies

Marti Hearst SIMS 247 Properties of Graphs Graph = (V, E)Graph = (V, E) V = set of vertices (points, nodes)V = set of vertices (points, nodes) V={A,B,C,D,E} E = set of edges between V’sE = set of edges between V’s E={(A,B), (A,E), (B,D), (E,C), (D,E)} A B C DE

Marti Hearst SIMS 247 Properties of Graphs Edges can be directedEdges can be directed –can go from A to B, but not from B to A –use arrows to show directedness Graphs can have cyclesGraphs can have cycles –can get back to B when starting from B A B C DE

Marti Hearst SIMS 247 Properties of Graphs A dag is a directed acyclic graphA dag is a directed acyclic graph –No cycles, but –A vertex can have more than one parent (if we remove the red edge, this graph becomes a dag) A B C DE

Marti Hearst SIMS 247 Properties of Graphs A tree is a connected graph with no cyclesA tree is a connected graph with no cycles Each node has exactly one parentEach node has exactly one parent A tree can represent a hierarchyA tree can represent a hierarchy –There is a distinguished root node –Levels are counted down from the root –Trees are drawn upside-down –Leaf nodes have no children A B CD E

Marti Hearst SIMS 247 Properties of Graphs A planar graph is one that can be drawn on a 2D plane with no edges crossingA planar graph is one that can be drawn on a 2D plane with no edges crossing CD BA

Marti Hearst SIMS 247 Properties of Graphs A planar graph is one that can be drawn on a 2D plane with no edges crossingA planar graph is one that can be drawn on a 2D plane with no edges crossing CD BA

Marti Hearst SIMS 247 Properties of Graphs In general, it can be very hard to determine if a large graph is planarIn general, it can be very hard to determine if a large graph is planar CD B A

Marti Hearst SIMS 247 Fisheye Views of Graphs (Sarkar & Brown 94) This is just one of many possible methodsThis is just one of many possible methods Convert normal to fisheye coordinatesConvert normal to fisheye coordinates MAGNIFY vertices of greater interestMAGNIFY vertices of greater interest demagnify vertices of lesser interestdemagnify vertices of lesser interest Also, recompute positions of all verticesAlso, recompute positions of all vertices Analogy: blowing up a balloon As some points grow farther apart, some get pushed closer together This happens because there is a fixed area or volume for all the points

Marti Hearst SIMS 247 Converting from Normal to Fisheye Coordinates Determine the current focus.Determine the current focus. Then, for each vertex in the graph:Then, for each vertex in the graph: –Compute new position –Compute new size –Determine amount of detail to be shown –Compute visual worth: Importance (API) + Distance from the focus point -> Even a very important node may be small if it is very far from the focus point

Marti Hearst SIMS 247 Computing New Vertex Position A vertex’s new position is a function of its normal position and that of the focusA vertex’s new position is a function of its normal position and that of the focus Distortion factor determines how far points are spread out from the focusDistortion factor determines how far points are spread out from the focus

Marti Hearst SIMS 247 Compute New Vertex Position

Marti Hearst SIMS 247 Effects on x of Various Distortion Factors x d=0.5d=2d= d=5.0 d=0.5

Marti Hearst SIMS 247 An Example of Fisheye Vertex Position Computation f p1 p2 f=(50,50), p1=(75,50), p2=(85,50) Dnorm/Dmax for p1: 25/50=.5 Dnorm/Dmax for p2: 35/50=.7 d=2 p1 fisheyex = (.75*50+50) = 87.5 p2 fisheyex =(.88*50+50) = 94.0 d=5 p1 fisheyex = (.86*50+50) = 93.0 p2 fisheyex =(.93*50+50) = Initial Positions of P1, P2, and Focus

Marti Hearst SIMS 247 Computing New Vertex Size

Marti Hearst SIMS 247 Computing New Vertex Size Vertex size is a function of the normal size, the distance from the focus, and the API of the vertex –look at length of side of bounding box –find a point that is s* length/2 away from center of vertex s is a vertex-size scale factor move in direction opposite of the focus –convert to fisheye coordinates –scale by API

Marti Hearst SIMS 247 Sarkar & Brown 94

Marti Hearst SIMS 247 Sarkar & Brown 94

Marti Hearst SIMS 247 Sarkar & Brown 94 distortion level 5 vs. 2

Marti Hearst SIMS 247 Computing Detail The amount of detail is proportional to the size of the vertex in the fisheye coordinatesThe amount of detail is proportional to the size of the vertex in the fisheye coordinates But must not exceed a maximum amount of detailBut must not exceed a maximum amount of detail –determine font size –determine size of nodes to avoid overlap –determine resolution of an image

Marti Hearst SIMS 247 Computing Visual Worth A cutoff that determines whether or not a node is shown at allA cutoff that determines whether or not a node is shown at all A function of the size of the node and a set of constantsA function of the size of the node and a set of constants

Marti Hearst SIMS 247 Sarkar & Brown 94 more emphasis on importance measure

Marti Hearst SIMS 247 Sarkar & Brown 94

Marti Hearst SIMS 247 Sarkar & Brown 94

Marti Hearst SIMS 247 Distortion Techniques Computation must take care not to let the magnified part overlap or cover up the de-magnified partComputation must take care not to let the magnified part overlap or cover up the de-magnified part The boundary between the magnified and the demagnified parts of the viewThe boundary between the magnified and the demagnified parts of the view –Some techniques have an abrupt boundary –Some are more gradual

Marti Hearst SIMS 247 Distortion Types Different distortions for different data types yield different effectsDifferent distortions for different data types yield different effects –cartesian, polar coordinates, hyperbolic Leung & Apperley’s TaxonomyLeung & Apperley’s Taxonomy –distinguish focus+context from distortion f+c requires a POI function