1 i247: Information Visualization and Presentation Marti Hearst April 2, 2008.

Slides:



Advertisements
Similar presentations
Graph Visualization and Navigation in Information Visualization: A Survey Ivan Herman, Guy Melaneon, M. Scott Marshall.
Advertisements

Network Visualization by Semantic Substrates Aleks Aris Ben Shneiderman.
www.brainybetty.com1 MAVisto A tool for the exploration of network motifs By Guo Chuan & Shi Jiayi.
1 H3: Laying Out Large Directed Graphs in 3D Hyperbolic Space Andrew Chan CPSC 533C March 24, 2003.
H3: Laying Out Large Directed Graphs in 3D Hyperbolic Space Tamara Munzner, Stanford University.
Fast Algorithms For Hierarchical Range Histogram Constructions
Graphs Chapter 20 Data Structures and Problem Solving with C++: Walls and Mirrors, Carrano and Henry, © 2013.
Hank Childs, University of Oregon November 22 nd, 2013 Force Directed Layouts.
Force directed graph drawing Thomas van Dijk. The problem Given a set of vertices and edges, compute positions for the vertices. If the edges don’t have.
Two Technique Papers on High Dimensionality Allan Rempel December 5, 2005.
Graph Drawing Zsuzsanna Hollander. Reviewed Papers Effective Graph Visualization via Node Grouping Janet M. Six and Ioannis G. Tollis. Proc InfoVis 2001.
New Techniques for Visualisation of Large and Complex Networks with Directed Edges Tim Dwyer 1 Yehuda Koren 2 1 Monash University, Victoria, Australia.
1 Presented by Jean-Daniel Fekete. 2  Motivation  Mélange [Elmqvist 2008] Multiple Focus Regions.
Visual Analysis of Large Graphs Using (X, Y)-clustering and Hybrid Visualizations V. Batagelj, W. Didimo, G. Liotta, P. Palladino, M. Patrignani (Univ.
Graph & BFS.
Graph Visualization cs5764: Information Visualization Chris North.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Lectures 3 Tuesday, 9/25/01 Graph Algorithms: Part 1 Shortest.
“Occlusion” Prepared by: Shreya Rawal 1. Extending Distortion Viewing from 2D to 3D S. Carpendale, D. J. Cowperthwaite and F. David Fracchia (1997) 2.
A tale of two tools (NVSS and VisLink) Shreya Rawal 1.
1 SIMS 247: Information Visualization and Presentation jeffrey heer Tree Visualization Oct 26, 2005.
Graph COMP171 Fall Graph / Slide 2 Graphs * Extremely useful tool in modeling problems * Consist of: n Vertices n Edges D E A C F B Vertex Edge.
SIMS 247: Information Visualization and Presentation jeffrey heer
Spring 2010CS 2251 Graphs Chapter 10. Spring 2010CS 2252 Chapter Objectives To become familiar with graph terminology and the different types of graphs.
Course Review COMP171 Spring Hashing / Slide 2 Elementary Data Structures * Linked lists n Types: singular, doubly, circular n Operations: insert,
Force Directed Algorithm Adel Alshayji 4/28/2005.
Table Lens From papers 1 and 2 By Tichomir Tenev, Ramana Rao, and Stuart K. Card.
Visualization of Graph Data CS 4390/5390 Data Visualization Shirley Moore, Instructor October 6,
1 Numerical geometry of non-rigid shapes Non-Euclidean Embedding Non-Euclidean Embedding Lecture 6 © Alexander & Michael Bronstein tosca.cs.technion.ac.il/book.
Microarray Gene Expression Data Analysis A.Venkatesh CBBL Functional Genomics Chapter: 07.
3.7. O THER G AME P HYSICS A PPROACHES Overview of other game engine physics approaches.
Ivan Herman, Guy Melançon, and M. Scott Marshall
H3: Laying Out Large Directed Graphs in 3D Hyperbolic Space Tamara Munzner Stanford University 元智資工所 系統實驗室 楊錫謦 1999/11/3.
Visualization Taxonomies and Techniques Graphs University of Texas – Pan American CSCI 6361, Spring 2014.
VISUALIZATION - 10 Pavel Slavík. ENV The Screen Space Problem All techniques, sooner or later, run out of screen space Parallel co-ordinates.
IAT Graphs ______________________________________________________________________________________ SCHOOL OF INTERACTIVE ARTS + TECHNOLOGY [SIAT]
By LaBRI – INRIA Information Visualization Team. Tulip 2010 – version Tulip is an information visualization framework dedicated to the analysis.
The Rectilinear Symmetric Crossing Minimization Problem Seokhee Hong The University of Sydney.
Crossing Minimisation (1) Ronald Kieft. Global contents Specific 2-layer Crossing Minimisation techniques After the break, by Johan Crossing Minimisation.
MA/CSSE 473 Day 12 Insertion Sort quick review DFS, BFS Topological Sort.
Network Aware Resource Allocation in Distributed Clouds.
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.
New method to optimize Force-directed layouts of large graphs Meva DODO, Fenohery ANDRIAMANAMPISOA, Patrice TORGUET, Jean Pierre JESSEL IRIT University.
Glasgow 02/02/04 NN k networks for content-based image retrieval Daniel Heesch.
IAT 814 Trees Chapter 3.2 of Spence ______________________________________________________________________________________ SCHOOL OF INTERACTIVE ARTS +
Copyright © Cengage Learning. All rights reserved. CHAPTER 10 GRAPHS AND TREES.
Representing and Using Graphs
MA/CSSE 473 Day 15 BFS Topological Sort Combinatorial Object Generation Intro.
Paradigms for Graph Drawing Graph Drawing: Algorithms for the Visualization of Graphs - Chapter 2 Presented by Liana Diesendruck.
Data Structures & Algorithms Graphs
Graph Visualization and Beyond … Anne Denton, April 4, 2003 Including material from a paper by Ivan Herman, Guy Melançon, and M. Scott Marshall.
Lecture 3: Uninformed Search
1/25 Visualizing Social Networks Ryan Yee. 2/25 Plan Introduction and terminology Vizster NodeTrix MatLink Applications to Multi-agent systems.
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.
CS270 Project Overview Maximum Planar Subgraph Danyel Fisher Jason Hong Greg Lawrence Jimmy Lin.
Visualization Four groups Design pattern for information visualization
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Ver Chapter 13: Graphs Data Abstraction & Problem Solving with C++
Graphs and MSTs Sections 1.4 and 9.1. Partial-Order Relations Everybody is not related to everybody. Examples? Direct road connections between locations.
John Lamping, Ramana Rao, Peter Porolli
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Animated Exploration of Graphs with Radial Layout IEEE InfoVis 2001 Ka-Ping Yee Rachna Dhamija Danyel Fisher Marti Hearst University of California, Berkeley.
1 CS270 Project Overview Maximum Planar Subgraph Danyel Fisher Jason Hong Greg Lawrence Jimmy Lin.
I NTRODUCTION TO G RAPH DRAWING Fall 2010 Battista, G. D., Eades, P., Tamassia, R., and Tollis, I. G Graph Drawing: Algorithms for the Visualization.
Lecture 20. Graphs and network models 1. Recap Binary search tree is a special binary tree which is designed to make the search of elements or keys in.
IAT 355 Graphs ______________________________________________________________________________________.
CS 201: Design and Analysis of Algorithms
CPT-S 415 Big Data Yinghui Wu EME B45.
I206: Lecture 15: Graphs Marti Hearst Spring 2012.
Clustering.
Presentation transcript:

1 i247: Information Visualization and Presentation Marti Hearst April 2, 2008

2 Today: Visualizing Networks Networks/graphs vs trees Algorithms for network layout Multidimensional networks A new toolkit

3 Graph and Tree Data Structures Graphs: –Representations of structured, connected data –Consist of a set of nodes (data) and a set of edges (relations) –Edges can be directed or undirected Trees: –Graphs with a specific structure connected graph with n-1 edges –Representations of data with natural hierarchy –Nodes are either parents or children

4 Slide adapted from Jeff Heer When is Graph Visualization Applicable? Ask the question: is there an inherent relation among the data elements to be visualized? –If YES – then the data can be represented by nodes of a graph, with edges representing the relations. –If NO – then the data elements are “unstructured” and goal is to use visualization to analyze and discover relationships among data. Source: Herman, Graph Visualization and Navigation in Information Visualization: a Survey

5 Slide adapted from Jeff Heer Common Applications Process Visualization (e.g., Visio) Dependency Graphs Biological Interactions (Genes, Proteins) Computer Networks Social Networks Simulation and Modeling

6 Slide adapted from Jeff Heer Graph Layout How to position the nodes and edges? The primary concern with networks –while inheriting other issues such as color, size, etc The topic of the Graph Drawing conference (as well as numerous InfoVis papers) and even multiple books.

7 Graph Layout: The Problem

8

9 Slide adapted from Jeff Heer Traditional Graph Drawing poly-line graphs (includes bends) planar, straight- line drawing orthogonal drawing upward drawing of DAGs

10 Slide adapted from Jeff Heer Traditional Graph Drawing Optimization based on a set of criteria (mathematical aesthetics) –Minimize edge crossings –Minimize area –Maximize smallest angle –Maximize symmetry –BUT, can’t do all at once Often unsuitable for interactive visualization –Many optimizations are NP-Hard (runs ~forever) Approximation algorithms very complex –Unless you only need to compute layout once Precompute layout, or compute once at the beginning of an application then support interaction

11 Slide adapted from Jeff Heer Layout Approaches Tree-ify the graph - then use tree layout Hierarchical graph layout Radial graph layout Optimization-based techniques –Includes spring-embedding / force-directed layout Adjacency matrices Structurally-independent layout On-demand revealing of subgraphs Distortion-based views –Hyperbolic browser (this list is not meant to be exhaustive)

12 Slide adapted from Jeff Heer Tree-based graph layout Select a tree-structure out of the graph –Breadth-first-search tree –Minimum spanning tree –Other domain-specific structures Use a tree layout algorithm Benefits –Fast, supports interaction and refinement Drawbacks –Limited range of layouts

13 Slide adapted from Jeff Heer Tree-ify the graph

14 Slide adapted from Jeff Heer Hierarchical graph layout Use directed structure of graph to inform layout Order the graph into distinct levels –this determines one dimension Now optimize within levels –determines the second dimension –minimize edge crossings, etc The method used in graphviz’s “dot” algorithm Great for directed acyclic graphs, but often misleading in the case of cycles

15 Slide adapted from Jeff Heer Hierarchical Graph Layout Evolution of the UNIX operating system Hierarchical layering based on descent

16 Slide adapted from Jeff Heer Hierarchical graph layout Gnutella network

17 Radial Layout Animated Exploration of Graphs with Radial Layout, Yee et al., 2001 Gnutella network

18 Slide adapted from Jeff Heer Optimization-based layout Specify constraints for layout –Series of mathematical equations –Hand to “solver” which tries to optimize the constraints Examples –Minimize edge crossings, line bends, etc –Multi-dimensional scaling (preserve multi-dim distance) –Force-directed placement (use physics metaphor) Benefits –General applicability –Often customizable by adding new constraints Drawbacks –Approximate constraint satisfaction –Running time; “organic” look not always desired

19 Slide adapted from Jeff Heer Example: Force-Directed Layout Uses physics model to layout graph, Nodes repel each other, edges act as springs, and some amount of friction or drag force is used. Special techniques to dampen “jitter”. visual wordnet visuwordshttp://

Typical Sugiyama layout (dot) - preserves tree structure Alternative method - preserves uniform edge lengths slide borrowed from Tim Dwyer

21 Slide adapted from Jeff Heer Examples slide borrowed from Tim Dwyer

22 Slide adapted from Jeff Heer Adjacency Matrices So far, only looked at node-link diagrams Often doesn’t scale well due to edge- crossings, occlusion, etc. --> hard to read One solution: adjacency matrix –show graph as table –nodes as rows/columns –edges as table cells

23 20 Years of Four HCI Conferences: A Visual Exploration Henry et al. IJHCI 2007 Matrices

24 Matrices with Submatrices

25 Slide adapted from Jeff Heer

26 Hyperbolic Browser: Inspiration

27 Using Distortion and Focus + Context The Hyperbolic Tree Browser The Hyperbolic Browser: A Focus + Context Technique for Visualizing Large Hierarchies, Lamping & Rao, CHI – –Uses non-Euclidean geometry as basis of focus + context technique The hyperbolic browser is a projection into a Euclidean space – a circle –The circumference of a circle increases at a linearly with radius (2 PI) –The circumference of a circle in hyperbolic space increases exponentially Exponential growth in space available with linear growth of radius –Makes tree layout easy Size of objects decreases with growth of radius –Reduces expense of drawing trees when cut-off at one pixel

28 Appearance of Initial Layout Root mapped at center Multiple generations of children mapped out towards edge of circle Drawing of nodes cuts off when less than one pixel

29 User orientation on refocus Problem –Hyperbolic Geometry can allow disorienting rotations of objects when refocusing Solution one: –Preserve initial angular orientation of parent to child nodes Solution two: –Preserve left to right orientation of parent to child nodes beginning with initial display

30 User orientations - Solutions Preserving Angular Orientation Left to Right Ordering

31 Slide adapted from Jeff Heer Structurally-Independent Layout Ignore the graph structure. Base the layout on other attributes of the data Examples: –Geography –Time Benefits –Often very quick layout –Optimizes communication of particular features Drawbacks –May or may not present structure well

32 Slide adapted from Jeff Heer Structurally Independent Layout The “Skitter” Layout –Internet Connectivity Angle = Longitude –geography Radius = Degree –# of connections Skitter,

33 Progressive Disclosure Only show subsets that are currently selected

34 Problem: Multivariate Graphs What if you want to associate information with the nodes and edges? Typical approach: vary –Size of nodes –Color of nodes –Fatness of edges –Colors of edges However, it’s hard to make quantitative comparisons when these retinal cues are spread throughout the graph.

35 Solution: Wattenberg’s Pivot Graphs Use “roll-up” idea from OLAP to compress and re- express graph data. –Aggregate all nodes that have the same values on each of those dimensions, and aggregate edges accordingly. In graph below, F = Female, M = Male, Numbers mean counts Visual Exploration of Multivariate Graphs, Wattenberg, IEEE Infoviz ???

36 Multidimensional Pivot Graphs What is added, and what is lost, from this transformation?

37

38 Compare 2D Pivot Graph with 2D Matrix

39 Issues with Pivot Graphs Disconnected components may become connected Acyclic graphs may obtain cycles

40 A new toolkit! Networks for excel by Marc Smith et al. at Microsoft research –Called.netmap –Requires windows-specific software (Search on “excel.netmap”)

41 Slide courtesy Marc Smith.NetMap: Edges Worksheet

42 Slide courtesy Marc Smith.NetMap: Vertices Worksheet

43 Slide courtesy Marc Smith

44 Slide courtesy Marc Smith

45 Slide courtesy Marc Smith Marc’s Facebook Graph

46 Slide courtesy Marc Smith Social Action – Adam Perer

47 Summary Networks are a big topic! Many approaches to layout. New ideas still coming all the time.