Graphs and Networks
CS 7450 - Information Visualization March 2, 2004
John Stasko
Spring 2004 CS 7450 2
Connections
• Spence’s chapter 8 is called Connectivity
• Connections throughout our lives and the world
− Circle of friends
− Delta’s flight plans
− …
• Model connected set as a Graph
Spring 2004 CS 7450 3
What is a Graph?
• Vertices (nodes) connected by
• Edges (links)
1 2 3 0 1 0 1 0 1 0 1 0 1
23
1: 2 2: 1, 3
3: 2 1
2 3 Adjacency matrix
Adjacency list
Drawing
Graph Terminology
• Graphs can have cycles
• Graph edges can be directed or undirected
• The degree of a vertex is the number of edges connected to it
− In-degree and out-degree for directed graphs
Spring 2004 CS 7450 5
Trees are Different
• Subcase of general graph
• No cycles
• Typically directed edges
• Special designated root vertex
• Already examined them
Spring 2004 CS 7450 6
Graph Uses
• In information visualization, any number of data sets can be modeled as a graph
− US telephone system
− World Wide Web
− Distribution network for on-line retailer
− Call graph of a large software system
− Semantic map in an AI algorithm
Spring 2004 CS 7450 7
Graph Visualization Problems
• Graph layout and positioning
− Make a concrete rendering of abstract graph
• Scale
− Not too much of a problem for small graphs, but large ones are much tougher
• Navigation
− How to support user changing focus and moving around the graph
Layout Algorithms
• Entire research community’s focus
• Good references:
− Tutorial (talk slides)
www.cs.brown.edu/people/rt/papers/gd-tutorial/gd-constraints.pdf
− G. diBattista, P. Eades, R. Tamassia, and I.
Tollis, Graph Drawing: Algorithms for the Visualization of Graphs
Spring 2004 CS 7450 9
Vertex Issues
• Shape
• Color
• Size
• Location
• Label
Spring 2004 CS 7450 10
General GD Information
• Good web links
− www.cs.brown.edu/people/rt/gd.html
− www.research.att.com/sw/tools/graphviz/
− rw4.cs.uni-sb.de/users/sander/html/gstools.html
Spring 2004 CS 7450 11
Edge Issues
• Color
• Size
• Label
• Form
− Polyline, straight line, orthogonal, grid, curved, planar, upward/downward, ...
Aesthetic Considerations
•
• CrossingsCrossings -- minimize towards planar
•• Total Edge LengthTotal Edge Length -- minimize towards proper scale
•• AreaArea -- minimize towards efficiency
•
• Maximum Edge LengthMaximum Edge Length -- minimize longest edge
Spring 2004 CS 7450 13
Layout Heuristics
• Layout algorithms can be
− planar
− grid-based
− orthogonal
− curved lines
− hierarchies
− circular
− ...
Spring 2004 CS 7450 14
Scale Challenge
• May run out of space for vertices and edges (turns into “ball of string”)
• Can really slow down algorithm
• Often use clustering to help
− Extract highly connected sets of vertices
− Collapse some vertices together
Spring 2004 CS 7450 15
Layout Examples
• Homework assignment
• Let’s judge!
Layout Examples
• Cool java applet
http://java.sun.com/applets/jdk/1.2/demo/applets/GraphLayout/example1.html
• Examples of dynamic graph layout algorithms
Spring 2004 CS 7450 17
Graph Uses
• Facilitate understanding of complex socio- economic patterns
• Social Science visualization gallery (Lothar Krempel):
− http://www.mpi-fg-koeln.mpg.de/~lk/netvis.html
• Next slides: Krempel & Plumper’s study of World Trade between OECD countries, 1981 and 1992
http://www.mpi-fg-koeln.mpg.de/~lk/netvis/trade/WorldTrade.html 1981
1992
Graph Uses
• Facilitate understanding of network flows, relations
• Even information with a ‘geographical’
content can best appear as a ‘network’ rail maps
3 Subway Diagrams
• Geographic landmarks largely suppressed on maps, except water (rivers in Paris, London) and asphalt (highways in Atlanta)
− Rather fitting, no?
• These are more graphsgraphs than maps!
Spring 2004 CS 7450 25
Social Network Visualization
• Social Network Analysis (Linton Freeman)
− http://www.sfu.ca/~insna
Spring 2004 CS 7450 26
People connections
Charles Isbell, Cobot
Spring 2004 CS 7450 27
Case Study
• SeeNet
− Visualizing network data (phone traffic) R. Becker, S. Eick and A. Wilks
AT&T
Domain
• AT&T long distance phone network
− 110 Nodes (switches) Geographical location
− Connected by 12,000 links
Directed, almost completely connected
• Data every 5 minutes
Spring 2004 CS 7450 29
Questions
• Where are the overloads?
• Which links are carrying most traffic?
• Was there network damage?
• Is there underutilized capacity?
• Are calls getting in to affected area or are there bottlenecks?
• Is overload increasing or decreasing?
Spring 2004 CS 7450 30
Edge Drawing Strategies
116 Label
Thickness Color
116
29 Directed
Spring 2004 CS 7450 31
Problems
• Too many lines!
− Occlusion
− Long lines become “more important”
− Can’t see what happens in Midwest
• Solutions
− Use half/half technique out/out
− Draw most important last
− Use thickness & color for traffic
Spring 2004 CS 7450 33
More Help
• Shorten all lines so as to de-emphasize transcontinental links
Spring 2004 CS 7450 35
Other Applications
• How would you visualize all email traffic in CoC between pairs of people?
• Solutions???
Solutions
• Put everyone on circle, lines between
− Color or thicken line to indicate magnitude
• Use spring/tension model
− People who send a lot to each other are drawn close together
− Shows clusters of communications
Spring 2004 CS 7450 37
More Email
• How about visualizing internet traffic?
http://www.ncsa.uiuc.edu/SCMS/DigLib/text/technology/Visualization-Study-NSFNET-Cox.html
Byte traffic into the ANS/NSFnet T3 backbone for the month of November, 1993
Inbound traffic measured in billions of bytes on the NSFNET T1 backbone for September 1991
Linux kernel
Spring 2004 CS 7450 41
TouchGraph
www.touchgraph.com
Spring 2004 CS 7450 42
Focus of Graph
• Particular node may be focus, often placed in center for circular layout
• How does one build an interactive system that allows changes in focus?
− Use animation
− Intuition about changes not always right
Spring 2004 CS 7450 43
Focus Change Animation
Straight linear interpolation of focus changes not as appealing as changes along polar coordinates
Yee, Fisher, Dhamija, Hearst InfoVis ‘01
Video
Radial Display
• Can we combine some of the properties of the hyperbolic graphs without the
hyperbolic distortion?
• Still use a radial technique with root/focus at center
Spring 2004 CS 7450 45
MoireGraphs
• Visual nodes (ie, images)
• Smooth interactions
• Multiple foci
• Versatile
Jankun-Kelly & Ma
InfoVis ‘03 Video
Spring 2004 CS 7450 46
Case Study
• NicheWorks
− Interactive Visualization of Very Large Graphs Graham Wills
Lucent
Spring 2004 CS 7450 47
Big Graphs
• 20,000 - 1,000,000 Nodes
• Works well with 50,000
• Projects
− Software Engineering
− Web site analysis
− Large database correlation
− Telephone fraud detection
Features
• Typical interactive operations
• Sophisticated graph layout algorithm
− 3 Layouts Circular Hexagonal Tree
− 3 Incremental Algorithms
Interface: Web Site Example
Circle layout Hexagonal layout Tree layout
Interface
Interface
Interface: Fraud Example
Interface: Fraud Example
Spring 2004 CS 7450 54
More Neat Stuff
• http://willsfamily.org/gwills/
• Lots of interesting application areas
• More details on NicheWorks
Spring 2004 CS 7450 55
More Resources
• Network visualization resources
− http://www.caida.org/projects/internetatlas/viz/
• Good article on graph layout
− http://www.csi.uottawa.ca/ordal/papers/sander/main.html
More to Come...
• Topic of WWW/InfoSphere (next) will touch on graphs and networks too
• Lots of example visualizations
Spring 2004 CS 7450 57
Upcoming
• WWW/Internet visualization
− Reading Chi et al
• Spring Break
Spring 2004 CS 7450 58
References
• Spence and CMS texts
• All referred to papers and web sites
• Dagon and Leahy, F ‘99 slides
Spring 2004 CS 7450 59
• Track flows and movements of individuals in society
• Next slides: Krempel’s map of Duisburg zoo visitors
− Physical coordinates yields ‘ball of string’
merely reflecting the autobahn division of zoo
− Gravity solution to graph shows flow
Graph Uses
Spring 2004 CS 7450 61