Motivation
Drawing large and dense graphs
Jazz musicians social network Windows system calls
Sergey Pupyrev Clear Graph Drawings
Outline
Part I – Visualization community
structure in power-law graphs
Part II – Improving quality of layered
layouts with edge bundling (MSR
project)
Sergey Pupyrev Clear Graph Drawings
Part I – Visualization community structure
in power-law graphs
Sergey Pupyrev Clear Graph Drawings
power-law = scale-free: P(k) ∼ k −γ ,
where 2 < γ < 3, P(k) - fraction of
nodes having k edges
fraction
of nodes
degree
of nodes
Internet (γ ≈ 2.15)
www (γ ≈ 2)
social networks
collaboration networks
...
Sergey Pupyrev Clear Graph Drawings
power-law = scale-free: P(k) ∼ k −γ ,
where 2 < γ < 3, P(k) - fraction of
nodes having k edges
fraction
of nodes
small-world effect
high clustering coefficient degree
of nodes
Internet (γ ≈ 2.15)
www (γ ≈ 2)
social networks
collaboration networks
...
Sergey Pupyrev Clear Graph Drawings
Classical distance-based methods:
stress minimization:
wij ( xi − xj − dij )2 → min
dij - ideal distance between nodes i and j
Sergey Pupyrev Clear Graph Drawings
Classical distance-based methods:
stress minimization:
wij ( xi − xj − dij )2 → min
dij - ideal distance between nodes i and j
multidimensional scaling: find x1 , . . . , xn ∈ R2
such that xi − xj ≈ dij
dij - dissimilarity for each pair of nodes
(usually, shortest-path length)
Sergey Pupyrev Clear Graph Drawings
Good layouts for grid-like graphs
Sergey Pupyrev Clear Graph Drawings
Good layouts for grid-like graphs
Optimal results for power-law graphs are
bad!
Sergey Pupyrev Clear Graph Drawings
Good layouts for grid-like graphs
Optimal results for power-law graphs are
bad!
ultrasmall average distance d ∼ loglogN
(Cohen, Halvin, 2003)
Sergey Pupyrev Clear Graph Drawings
Goal: visualize communities
More edges "inside" than "outside"
Sergey Pupyrev Clear Graph Drawings
Goal: visualize communities
More edges "inside" than "outside"
Modularity Q = (actual - expected number of edges in module i)
Sergey Pupyrev Clear Graph Drawings
power-law graphs has clear
community structure (Girvan, Newman, 2000s)
Sergey Pupyrev Clear Graph Drawings
power-law graphs has clear
community structure (Girvan, Newman, 2000s)
community structure is a hierarchy
with height ∼ log N
Sergey Pupyrev Clear Graph Drawings
Algorithm for visualizing communities
Building
hierarchy
Layout
nodes
Result
Sergey Pupyrev Clear Graph Drawings
Algorithm for visualizing communities
building hierarchy:
initially each node is its own community
unite pair of communities, producing
most modularity gain
stop if no modularity improvement
Sergey Pupyrev Clear Graph Drawings
Algorithm for visualizing communities
building hierarchy:
initially each node is its own community
unite pair of communities, producing
most modularity gain
stop if no modularity improvement
layout:
force-directed approach
forces are proportional to the number of
edges between communities
added gravitational force
Sergey Pupyrev Clear Graph Drawings
Edge bundling algorithm
1. Choose edges to be bundled
Sergey Pupyrev Clear Graph Drawings
Edge bundling algorithm
1. Choose edges to be bundled
2. Bundle ”widening”
Sergey Pupyrev Clear Graph Drawings
Edge bundling algorithm
1. Choose edges to be bundled
2. Bundle ”widening”
3. Bundle ”beautifying”
Sergey Pupyrev Clear Graph Drawings
Edge bundling algorithm
Choose edges to be bundled based on ink
minimization (Tufte, 1983)
What is ink?
1 1
0
→ 0
0 1 2 0 1 2
ink 13.13 ink 7.47
Constraints?
Sergey Pupyrev Clear Graph Drawings
Edge bundling algorithm
Choose edges to be bundled based on ink
minimization (Tufte, 1983)
What is ink?
Constraints?
→
Sergey Pupyrev Clear Graph Drawings
Edge bundling algorithm
Choose edges to be bundled based on ink
minimization (Tufte, 1983)
What is ink?
Constraints?
→
Sergey Pupyrev Clear Graph Drawings
Edge bundling algorithm
Choose edges to be bundled based on ink
minimization (Tufte, 1983)
What is ink?
Constraints?
FindBundles(G)
bundles ← {{e1 }, . . . , {em }}
do
(b1 , b2 ) ← valid pair of bundles which merge produces the maximal ink gain
bundles ← bundles − {b1, b2} + {UniteBundles(b1 , b2 )}
while ink improvement > 0
return bundles
Sergey Pupyrev Clear Graph Drawings
Metro-map algorithm
Input: graph G = (V, E) and simple paths P
(”metro lines”)
Output: order of lines for each v ∈ V with
minimum number of crossings
Sergey Pupyrev Clear Graph Drawings
Metro-map algorithm
traverse nodes in upward
fashion
build ordering based on
lines configuration
at the end only
unavoidable crossings are
presented (Argyriou et al., 2008)
unavoidable
crossing
Sergey Pupyrev Clear Graph Drawings
Edge bundling algorithm
Refinements:
obstacle avoiding
→
straightening based on median heuristic
→
Sergey Pupyrev Clear Graph Drawings
Experiments
Sergey Pupyrev Clear Graph Drawings
Metro-map trick reduces crossings for general
Sugiyama scheme
Sergey Pupyrev Clear Graph Drawings
Metro-map trick reduces crossings for general
Sugiyama scheme
→
Sergey Pupyrev Clear Graph Drawings
Metro-map trick reduces crossings for general
Sugiyama scheme
→ →
Sergey Pupyrev Clear Graph Drawings
Metro-map trick reduces crossings for general
Sugiyama scheme
→ →
software state diagrams dense power-law graphs
Sergey Pupyrev Clear Graph Drawings
Results
Part I: we can reveal community
structure of power-law networks
Sergey Pupyrev Clear Graph Drawings
Results
Part I: we can reveal community
structure of power-law networks
Part II: edge bundling reduces clutter
Sergey Pupyrev Clear Graph Drawings
Results
Part I: we can reveal community
structure of power-law networks
Part II: edge bundling reduces clutter
paper on edge bundling [Pupyrev, Nachmanson] to be submitted to
PacificVis’10
Sergey Pupyrev Clear Graph Drawings
Results
Part I: we can reveal community
structure of power-law networks
Part II: edge bundling reduces clutter
paper on edge bundling [Pupyrev, Nachmanson] to be submitted to
PacificVis’10
future work: consider ink 2 instead ink
Sergey Pupyrev Clear Graph Drawings
Results
Thanks for your attention!
Questions? Comments?
Sergey Pupyrev Clear Graph Drawings
Graph is the common structure for a variety of apll more
Graph is the common structure for a variety of apllications. There are a plenty of methods generating graph layouts - visualizations that helps to analyse complex data. However, for large and dense graphs most algorithms produce visually cluttered and hence useless drawings. In the talk we attack this problem from two sides. First, we present a multi-level scheme for drawing large power-law graphs that outperform in practice classical MDS and force-directed techniques. Second, we propose an edge bundling algorithm recently developed at MSR for the improving quality of layered layouts. less
0 comments
Post a comment