Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · •...

42
www.cs.ubc.ca/~tmm/courses/547-19 Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs Paper: ABySS-Explorer Tamara Munzner Department of Computer Science University of British Columbia CPSC 547, Information Visualization Week 5: 8 October 2019

Transcript of Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · •...

Page 1: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

www.cs.ubc.ca/~tmm/courses/547-19

Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs Paper: ABySS-ExplorerTamara MunznerDepartment of Computer ScienceUniversity of British Columbia

CPSC 547, Information VisualizationWeek 5: 8 October 2019

Page 2: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

News

• today–pitches first

• idea: use Canvas thread to sort out groups

–discussion/lecture second• tables/color (catch-up)• today's reading (get started)

• next time (Oct 15)–no exercises or guest lecture, catch up on discussions of reading

• week after that–reminder no class Tue Oct 22! –by Fri Oct 25:

• presentation topics (there will be a Canvas thread)• final project teams (there will be a different Canvas thread than discussion one) 2

Page 3: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Pitches

3

Page 4: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Ch 8: Arrange Spatial Data

4

Page 5: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

5

Arrange spatial dataArrange Spatial Data

Use GivenGeometry

GeographicOther Derived

Spatial FieldsScalar Fields (one value per cell)

Isocontours

Direct Volume Rendering

Vector and Tensor Fields (many values per cell)

Flow Glyphs (local)

Geometric (sparse seeds)

Textures (dense seeds)

Features (globally derived)

Page 6: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idiom: choropleth map• use given spatial data

–when central task is understanding spatial relationships

• data–geographic geometry–table with 1 quant attribute per region

• encoding–use given geometry for area mark boundaries–sequential segmented colormap [more later]–(geographic heat map)

6

http://bl.ocks.org/mbostock/4060606

Page 7: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Population maps trickiness

• beware!• absolute vs relative again

• population density vs per capita• investigate with Ben Jones Tableau

Public demo• http://public.tableau.com/profile/

ben.jones#!/vizhome/PopVsFin/PopVsFinAre Maps of Financial Variables just Population Maps?

• yes, unless you look at per capita (relative) numbers

7

[ https://xkcd.com/1138 ]

Page 8: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idiom: Bayesian surprise maps

• use models of expectations to highlight surprising values• confounds (population) and variance (sparsity)

8

[Surprise! Bayesian Weighting for De-Biasing Thematic Maps. Correll and Heer. Proc InfoVis 2016]

https://medium.com/@uwdata/surprise-maps-showing-the-unexpected-e92b67398865 https://idl.cs.washington.edu/papers/surprise-maps/

Page 9: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idiom: topographic map• data

–geographic geometry–scalar spatial field

• 1 quant attribute per grid cell

• derived data–isoline geometry

• isocontours computed for specific levels of scalar values

9

Land Information New Zealand Data Service

Page 10: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idioms: isosurfaces, direct volume rendering• data

–scalar spatial field• 1 quant attribute per grid cell

• task–shape understanding, spatial

relationships

• isosurface–derived data: isocontours computed for

specific levels of scalar values

• direct volume rendering–transfer function maps scalar values to

color, opacity

10

[Interactive Volume Rendering Techniques. Kniss. Master’s thesis, University of Utah Computer Science, 2002.]

[Multidimensional Transfer Functions for Volume Rendering. Kniss, Kindlmann, and Hansen. In The Visualization Handbook, edited by Charles Hansen and Christopher Johnson, pp. 189–210. Elsevier, 2005.]

A B CA B C

D E

F

Data Value

B

C

E

D

F

Page 11: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Vector and tensor fields

• data–many attribs per cell

• idiom families–flow glyphs

• purely local

–geometric flow • derived data from tracing particle

trajectories• sparse set of seed points

–texture flow • derived data, dense seeds

–feature flow • global computation to detect features

– encoded with one of methods above

11

[Comparing 2D vector field visualization methods: A user study. Laidlaw et al. IEEE Trans. Visualization and Computer Graphics (TVCG) 11:1 (2005), 59–70.]

Attracting Node: R1, R2 < 0, I1 = I2 = 0

Repelling Node:

I1 = I2 = 0

R1, R2 > 0,Attracting Focus:

I1 = !I2 <> 0

R1 = R2 < 0,Repelling Focus: R1 = R2 >0, I1 = !I2 <> 0

Saddle Point: R1<0, R2>0, I1 = I2 = 0

Fig. 1. Common rst order singularity types

3.1 Critical Points and Separatrices

Critical points (also called singularities) are the only locations where streamlines

can intersect. They exist in various types that correspond to specic geometries of

the streamlines in their neighborhood. We focus on the linear case: There are 5 com-

mon types characterized by the eigenvalues of the Jacobian (see Fig. 1). Attracting

nodes and foci are sinks while repelling nodes and foci are sources. A fundamental

invariant is the so-called index of a critical point, dened as the number of eld

rotations while traveling around the critical point along a closed curve, counter-

clockwise. Note that all sources and sinks mentioned above have index +1 while

saddle points have index -1. Separatrices are streamlines that start or end at a saddle

point.

3.2 Closed Streamlines

A closed streamline, which is sometimes known as closed orbit, is a streamline that

is connected to itself so that a loop is built. Consequently, this is a streamline ca, so

that there is a t0 ∈ R with ca(t + nt0) = ca(t) ∀n ∈ N. From a topological point

of view, closed streamlines behave in the same way as sources or sinks. To detect

these closed streamlines we use the algorithm proposed by two of the authors [12].

Interpolating linearly on the given grid we get a continuous vector eld. To nd

closed streamlines we use the underlying grid to nd a region that is never left by

the streamline. If there is no critical point inside this region, we have found a closed

streamline according to the Poincare-Bendixson-theorem.

3.3 Bifurcations

One distinguishes two types of structural transitions: local and global bifurcations.

In the following, we focus on typical 2D local bifurcations and present a typical

aspect of global bifurcations.

3

[Topology tracking for the visualization of time-dependent two-dimensional flows. Tricoche, Wischgoll, Scheuermann, and Hagen. Computers & Graphics 26:2 (2002), 249–257.]

Page 12: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Vector fields

• empirical study tasks–finding critical points, identifying their

types–identifying what type of critical point

is at a specific location–predicting where a particle starting at

a specified point will end up (advection)

12

[Comparing 2D vector field visualization methods: A user study. Laidlaw et al. IEEE Trans. Visualization and Computer Graphics (TVCG) 11:1 (2005), 59–70.]

Attracting Node: R1, R2 < 0, I1 = I2 = 0

Repelling Node:

I1 = I2 = 0

R1, R2 > 0,Attracting Focus:

I1 = !I2 <> 0

R1 = R2 < 0,Repelling Focus: R1 = R2 >0, I1 = !I2 <> 0

Saddle Point: R1<0, R2>0, I1 = I2 = 0

Fig. 1. Common rst order singularity types

3.1 Critical Points and Separatrices

Critical points (also called singularities) are the only locations where streamlines

can intersect. They exist in various types that correspond to specic geometries of

the streamlines in their neighborhood. We focus on the linear case: There are 5 com-

mon types characterized by the eigenvalues of the Jacobian (see Fig. 1). Attracting

nodes and foci are sinks while repelling nodes and foci are sources. A fundamental

invariant is the so-called index of a critical point, dened as the number of eld

rotations while traveling around the critical point along a closed curve, counter-

clockwise. Note that all sources and sinks mentioned above have index +1 while

saddle points have index -1. Separatrices are streamlines that start or end at a saddle

point.

3.2 Closed Streamlines

A closed streamline, which is sometimes known as closed orbit, is a streamline that

is connected to itself so that a loop is built. Consequently, this is a streamline ca, so

that there is a t0 ∈ R with ca(t + nt0) = ca(t) ∀n ∈ N. From a topological point

of view, closed streamlines behave in the same way as sources or sinks. To detect

these closed streamlines we use the algorithm proposed by two of the authors [12].

Interpolating linearly on the given grid we get a continuous vector eld. To nd

closed streamlines we use the underlying grid to nd a region that is never left by

the streamline. If there is no critical point inside this region, we have found a closed

streamline according to the Poincare-Bendixson-theorem.

3.3 Bifurcations

One distinguishes two types of structural transitions: local and global bifurcations.

In the following, we focus on typical 2D local bifurcations and present a typical

aspect of global bifurcations.

3

[Topology tracking for the visualization of time-dependent two-dimensional flows. Tricoche, Wischgoll, Scheuermann, and Hagen. Computers & Graphics 26:2 (2002), 249–257.]

Page 13: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idiom: similarity-clustered streamlines• data

–3D vector field

• derived data (from field)–streamlines: trajectory particle will follow

• derived data (per streamline)–curvature, torsion, tortuosity–signature: complex weighted combination–compute cluster hierarchy across all signatures–encode: color and opacity by cluster

• tasks–find features, query shape

• scalability–millions of samples, hundreds of streamlines

13

[Similarity Measures for Enhancing Interactive Streamline Seeding. McLoughlin,. Jones, Laramee, Malki, Masters, and. Hansen. IEEE Trans. Visualization and Computer Graphics 19:8 (2013), 1342–1353.]

Page 14: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Ch 9: Arrange Network Data

14

Page 15: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

15

Arrange networks and treesArrange Networks and Trees

Node–Link Diagrams

Enclosure

Adjacency Matrix

TREESNETWORKS

Connection Marks

TREESNETWORKS

Derived Table

TREESNETWORKS

Containment Marks

Page 16: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idiom: force-directed placement• visual encoding

–link connection marks, node point marks

• considerations–spatial position: no meaning directly encoded

• left free to minimize crossings

–proximity semantics?• sometimes meaningful

• sometimes arbitrary, artifact of layout algorithm

• tension with length– long edges more visually salient than short

• tasks–explore topology; locate paths, clusters

• scalability–node/edge density E < 4N

16http://mbostock.github.com/d3/ex/force.html

!"#$"%#& '!"#$%&'( '()*+,#-./.%)- '0)+$*#

!"#$%&'(#%$)%*+,#-./

12%3'3%,45#'6)$*#78%$#*.#8'9$/42'32)&3'*2/$/*.#$'*)7)**+$#-*#'%-'!"#$%&#'()*+"#:';'42<3%*/5'3%,+5/.%)-')6*2/$9#8'4/$.%*5#3'/-8'34$%-93'45/*#3'$#5/.#8'*2/$/*.#$3'%-'*5)3#$'4$)=%,%.<>'&2%5#'+-$#5/.#8'*2/$/*.#$3'/$#'6/$.2#$/4/$.:'?/<)+.'/59)$%.2,'%-34%$#8'@<'1%,'(&<#$'/-8'12),/3'A/B)@3#-:'(/./'@/3#8')-'*2/$/*.#$'*)/44#/$#-*#'%-C%*.)$'D+9)E3'!"#$%&#'()*+"#>'*),4%5#8'@<'()-/58'F-+.2:

)*+,-'./*0'

*0123

!!"#!"#$%&!$!'()*

!!!!!&+#,&%!$!-)).

!

!!"#!/0102!$!$345/61+4/6%+,0278)9:.

!

!!"#!;02/+!$!$341670<%4;02/+9:

!!!!!4/&62,+9%=8):

!!!!!41#>?@#5%6>/+93):

!!!!!45#A+9B"#$%&*!&+#,&%C:.

!

!!"#!5D,!$!$345+1+/%9EF/&62%E:46GG+>$9E5D,E:

!!!!!46%%29E"#$%&E*!"#$%&:

!!!!!46%%29E&+#,&%E*!&+#,&%:.

!

!$34H50>9EI#5+26J1+54H50>E*!&'()*+,(9H50>:!K

!!!;02/+

!!!!!!!4>0$+59H50>4>0$+5:

!!!!!!!41#>?59H50>41#>?5:

!!!!!!!45%62%9:.

!

!!!!"#!1#>?!$!5D,45+1+/%L119E1#>+41#>?E:

!!!!!!!4$6%69H50>41#>?5:

!!!!!4+>%+29:46GG+>$9E1#>+E:

!!!!!!!46%%29E/1655E*!E1#>?E:

!!!!!!!45%71+9E5%20?+M"#$%&E*!&'()*+,(9$:!K!#-*'#(!N6%&45O2%9$4D61<+:.!P:.

!

!!!!"#!>0$+!$!5D,45+1+/%L119E/#2/1+4>0$+E:

!!!!!!!4$6%69H50>4>0$+5:

!!!!!4+>%+29:46GG+>$9E/#2/1+E:

!!!!!!!46%%29E/1655E*!E>0$+E:

!!!!!!!46%%29E2E*!-:

!!!!!!!45%71+9E;#11E*!&'()*+,(9$:!K!#-*'#(!/01029$4,20<G:.!P:

!!!!!!!4/6119;02/+4$26,:.

!

!!!>0$+46GG+>$9E%#%1+E:

!!!!!!!4%+Q%9&'()*+,(9$:!K!#-*'#(!$4>6I+.!P:.

!

!!!;02/+40>9E%#/?E*!&'()*+,(9:!K

!!!!!1#>?46%%29EQ=E*!&'()*+,(9$:!K!#-*'#(!$450<2/+4Q.!P:

!=

!8

!3

!R

!-

!(

!S

!T

!'

=)

==

=8

=3

=R

=-

=(

=S

=T

='

8)

8=

88

83

8R

8-

8(

8S

8T

8'

3)

3=

38

33

3R

3-

3(

3S

3T

3'

Page 17: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idiom: sfdp (multi-level force-directed placement)

• data–original: network–derived: cluster hierarchy atop it

• considerations–better algorithm for same encoding

technique• same: fundamental use of space• hierarchy used for algorithm speed/quality but

not shown explicitly• (more on algorithm vs encoding in afternoon)

• scalability–nodes, edges: 1K-10K–hairball problem eventually hits

17

[Efficient and high quality force-directed graph drawing. Hu. The Mathematica Journal 10:37–71, 2005.]

http://www.research.att.com/yifanhu/GALLERY/GRAPHS/index1.html

Page 18: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idiom: adjacency matrix view• data: network

–transform into same data/encoding as heatmap

• derived data: table from network–1 quant attrib

• weighted edge between nodes

–2 categ attribs: node list x 2

• visual encoding–cell shows presence/absence of edge

• scalability–1K nodes, 1M edges

18

ii

ii

ii

ii

7.1. Using Space 135

Figure 7.5: Comparing matrix and node-link views of a five-node network.a) Matrix view. b) Node-link view. From [Henry et al. 07], Figure 3b and3a. (Permission needed.)

the number of available pixels per cell; typically only a few levels wouldbe distinguishable between the largest and the smallest cell size. Networkmatrix views can also show weighted networks, where each link has an as-sociated quantitative value attribute, by encoding with an ordered channelsuch as color luminance or size.

For undirected networks where links are symmetric, only half of thematrix needs to be shown, above or below the diagonal, because a linkfrom node A to node B necessarily implies a link from B to A. For directednetworks, the full square matrix has meaning, because links can be asym-metric. Figure 7.5 shows a simple example of an undirected network, witha matrix view of the five-node dataset in Figure 7.5a and a correspondingnode-link view in Figure 7.5b.

Matrix views of networks can achieve very high information density, upto a limit of one thousand nodes and one million edges, just like clusterheatmaps and all other matrix views that uses small area marks.

Technique network matrix viewData Types networkDerived Data table: network nodes as keys, link status between two

nodes as valuesView Comp. space: area marks in 2D matrix alignmentScalability nodes: 1K

edges: 1M

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.1.3.3 Multiple Keys: Partition and Subdivide When a dataset has onlyone key, then it is straightforward to use that key to separate into one region

[NodeTrix: a Hybrid Visualization of Social Networks. Henry, Fekete, and McGuffin. IEEE TVCG (Proc. InfoVis) 13(6):1302-1309, 2007.]

[Points of view: Networks. Gehlenborg and Wong. Nature Methods 9:115.]

Page 19: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Connection vs. adjacency comparison

• adjacency matrix strengths–predictability, scalability, supports reordering–some topology tasks trainable

• node-link diagram strengths–topology understanding, path tracing–intuitive, no training needed

• empirical study–node-link best for small networks–matrix best for large networks

• if tasks don’t involve topological structure!

19

[On the readability of graphs using node-link and matrix-based representations: a controlled experiment and statistical analysis. Ghoniem, Fekete, and Castagliola. Information Visualization 4:2 (2005), 114–135.]

http://www.michaelmcguffin.com/courses/vis/patternsInAdjacencyMatrix.png

Page 20: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idiom: radial node-link tree• data

–tree

• encoding–link connection marks–point node marks–radial axis orientation

• angular proximity: siblings• distance from center: depth in tree

• tasks–understanding topology, following paths

• scalability–1K - 10K nodes

20http://mbostock.github.com/d3/ex/tree.html

!"#$"%#& '!"#$%&'( '()*+,#-./.%)- '0)+$*#

!"#$%&'()*+,$$

12#'!"##'3/4)+.'%,53#,#-.6'.2#'7#%-8)39:1%3;)$9'/38)$%.2,';)$'#;<*%#-.='.%94'/$$/-8#,#-.');'3/4#$#9'-)9#6>'12#9#5.2');'-)9#6'%6'*),5+.#9'?4'9%6./-*#';$),'.2#'$)).='3#/9%-8'.)'/'$/88#9'/55#/$/-*#>'@/$.#6%/-')$%#-./.%)-6/$#'/36)'6+55)$.#9>'A,53#,#-./.%)-'?/6#9')-'&)$B'?4'C#;;'D##$'/-9'C/6)-'(/"%#6'+6%-8'E+*22#%,'#.'/3>F6'3%-#/$:.%,#'"/$%/-.');'.2#'7#%-8)39:1%3;)$9'/38)$%.2,>'(/./'62)&6'.2#'G3/$#'*3/66'2%#$/$*24='/36)'*)+$.#64'C#;;'D##$>

)*+,-'./*0'

#-./0

!"#$

"%"&'()*+

*&,+($#

-..&/0$#"()1$2&,+($#

2/00,%)('3(#,*(,#$

4)$#"#*5)*"&2&,+($#

6$#.$78.$

.#"95

:$(;$$%%$++2$%(#"&)('

<)%=>)+("%*$

6"?@&/;6)%2,(

35/#($+(A"(5+

39"%%)%.B#$$

/9()0)C"()/%

-+9$*(D"()/:"%=$#

"%)0"($

7"+)%.

@,%*()/%3$E,$%*$

)%($#9/&"($

-##"'F%($#9/&"(/#

2/&/#F%($#9/&"(/#

>"($F%($#9/&"(/#

F%($#9/&"(/#

6"(#)?F%($#9/&"(/#

G,0H$#F%($#9/&"(/#

IHJ$*(F%($#9/&"(/#

A/)%(F%($#9/&"(/#

D$*("%.&$F%($#9/&"(/#

F3*5$8,&"H&$

A"#"&&$&

A",+$

3*5$8,&$#

3$E,$%*$

B#"%+)()/%

B#"%+)()/%$#

B#"%+)()/%71$%(

B;$$%

8"("

*/%1$#($#+

2/%1$#($#+

>$&)0)($8B$?(2/%1$#($#

K#"956<2/%1$#($#

F>"("2/%1$#($#

L3IG

2/%1$#($#

>"("@

)$&8

>"("3

*5$0"

>"("3

$(

>"("3

/,#*$

>"("B"

H&$

>"("M(

)&

8)+9&"'

>)#('39#)(

$

<)%$39#)($

D$*(39#)($

B$?(39#)($

!$? @&"#$N)+

95'+)*+

>#".@/#*$K#"1)('@/#*$F@/#*$G:/8'@/#*$A"#()*&$3)0,&"()/%39#)%.39#)%.@/#*$E

,$#'

-..#$."($7?9#$++)/%

-%8-#)(50$()*

-1$#".$:)%"#'7?9#$++)/%

2/09"#)+/%

2/09/+)($7?9#$++)/%

2/,%(>"($M

()&

>)+()%*(

7?9#$++)/%

7?9#$++)/%F($#"(/#

@%FOF+-<

)($#"&

6"(*5

6"?)0

,0

0$(5/8+

"88"%8"1$#".$

*/,%(

8)+()%*(

8)1$EO%.(.($)OO)+"&(&($0

"?

0)%0/8

0,&

%$E

%/(

/#/#8$#H'

#"%.$

+$&$*(

+(88$1

+,H

+,0

,98"($

1"#)"%*$

;5$#$?/#P

6)%)0,0

G/(

I#Q,$#'

D"%.$

3(#)%

.M()&

3,0

N"#)"H&$

N"#)"%*$

R/#

+*"&$

F3*"&$6"9

<)%$"#3*"&$

</.3*"&$

I#8)%"&3*"&$

Q,"%()&$3*"&$

Q,"%()("()1$3*"&$

D//(3*"&$

3*"&$

3*"&$B'9$

B)0$3*"&$

,()&

-##"'+

2/&/#+

>"($+

>)+9&"'+

@)&($#

K$/0$(#'5$

"9

@)H/%"**)4$"9

4$"9G/8$

F71"&,"H&$

FA#$8)*"($

FN"&,$A#/?'0"(5

>$%+$6"(#)?F6

"(#)?

39"#+$6"(#)?

6"(5+

I#)$%("()/%9"&

$(($

2/&/#A

"&$(($A"

&$(($

35"9$

A"&$((

$3)C

$A"&$((

$

A#/9$#

('35"9$+3/#(

3("(+3(#)%.

+

1)+

"?)+

-?$+-?)+-?)+K#)8<)%$

-?)+<"H$&2"#($+)"%-?$+

*/%(#/&+

-%*5/#2/%(#/&2&)*=2/%(#/&

2/%(#/&

2/%(#/&<)+(

>#".2/%(#/&

7?9"%82/%(#/&

4/1$#2/%(#/&

F2/%(#/&

A"%S//02/%(#/&

3$&$*()/%2/%(#/&

B//&()92/%(#/&

8"("

>"("

>"("<)+(

>"("39#)($

78.$39#)($

G/8$39#)($

#$%8$#

-##/;B'9$

78.$D$%8$#$#

FD$%8$#$#

35"9$D$%8$#$#

3*"&$:)%8)%.

B#$$

B#$$:,)&8$#

$1$%(+

>"("71$%(

3$&$*()/%71$%(

B//&()971$%(

N)+,"&)C"()/%71$%(

&$.$%8

<$.$%8

<$.$%8F($0

<$.$%8D"%.$ /

9$#"(/#

8)+(/#()/%

:)O/*"&>

)+(/#()/%

>)+(/#()/%

@)+5$'$>)+(/#()/%

$%*/8$#

2/&/#7%*/8$#

7%*/8$#

A#/9$#('7

%*/8$#

35"9$7%*/8$#

3)C$7%*/8$#

T&($#

@)+5$'$B#$$@)&($#

K#"95>)+("

%*$@)&($#

N)+)H

)&)('@)&($#

FI9$#"(/#

&"H$&

<"H$&$#

D"8)"&<"H$&$#

3("*=$

8-#$"<"H$&$#

&"'/,(

-?)+<

"'/,(

:,%8&$878.$D/,($#

2)#*&$<"'/,(

2)#*&$A"*=)%.<"'/,(

>$%8#/.#"0<"'/,(

@/#*$>)#$*($8<"'/,(

F*)*&$B#$$<"'/,(

F%8$%($8B#$$<"'/,(

<"'/,(

G/8$<)%=B#$$<"'/,(

A)$<"'/,(

D"8)"&B#$$<"'/,(

D"%8/0<"'/,(

3("*=$8-#$"<"'/,(

B#$$6"9<"'/,(

I9$#"(/#

I9$#"(/#<)+(

I9$#"(/#3$E,$%*$

I9$#"(/#3;)(*5

3/#(I

9$#"(/#

N)+,"&)C"

()/%

$!"#$"%&'()$$$*+,$%$-.

$

$!"#$!"##$$$&/01%23(!0!"##45

$$$$$0)'6#47/+,8$"%&'()$&$9-,:5

$$$$$0)#;%"%!'3<4'()*+,-)4%8$=5$>$#.+(#)$4%0;%"#<!$$$$=0;%"#<!$/$9$0$-5$%$%0&#;!?.$@5.

$

$!"#$&'%A3<%1$$$&/0)BA0&'%A3<%10"%&'%145

$$$$$0;"3C#D!'3<4'()*+,-)4&5$>$#.+(#)$7&028$&0E$%$9F,$1$G%!?0HI:.$@5.

$

$!"#$B')$$$&/0)#1#D!4JKD?%"!J50%;;#<&4J)BAJ5

$$$$$0%!!"4JL'&!?J8$"%&'()$1$-5

$$$$$0%!!"4J?#'A?!J8$"%&'()$1$-$&$9M,5

$$$0%;;#<&4JAJ5

$$$$$0%!!"4J!"%<)N3"OJ8$J!"%<)1%!#4J$2$"%&'()$2$J8J$2$"%&'()$2$J5J5.

$

$&/0C)3<4J00P&%!%PN1%"#0C)3<J8$'()*+,-)4C)3<5$>

$$$!"#$<3&#)$$$!"##0<3&#)4C)3<5.

$9

$-

$/

$Q

$M

$+

$R

$F

$*

9,

99

9-

9/

9Q

9M

9+

9R

Page 21: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Idiom: treemap• data

–tree–1 quant attrib at leaf nodes

• encoding–area containment marks for

hierarchical structure–rectilinear orientation–size encodes quant attrib

• tasks–query attribute at leaf nodes

• scalability–1M leaf nodes

21

http://www.nytimes.com/packages/html/newsgraphics/2011/0119-budget/index.html

Page 22: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Link marks: Connection and containment

• marks as links (vs. nodes)–common case in network drawing–1D case: connection

• ex: all node-link diagrams• emphasizes topology, path tracing• networks and trees

–2D case: containment• ex: all treemap variants• emphasizes attribute values at leaves (size

coding)• only trees

22

Node–Link Diagram Treemap Elastic Hierarchy

Node-Link Containment

[Elastic Hierarchies: Combining Treemaps and Node-Link Diagrams. Dong, McGuffin, and Chignell. Proc. InfoVis 2005, p. 57-64.]

Marks As Items/nodes

Marks As Links

Points Lines Areas

Containment Connection

Marks As Items/nodes

Marks As Links

Points Lines Areas

Containment Connection

Page 23: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Tree drawing idioms comparison

• data shown– link relationships

– tree depth– sibling order

• design choices– connection vs containment link marks– rectilinear vs radial layout

– spatial position channels

• considerations– redundant? arbitrary?

– information density?• avoid wasting space

23

[Quantifying the Space-Efficiency of 2D Graphical Representations of Trees. McGuffin and Robert. Information Visualization 9:2 (2010), 115–140.]

Page 24: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Paper: Genealogical Graphs

24

Page 25: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Genealogical graphs: Technique paper• family tree is a misnomer

–single person has tree of ancestors, tree of descendants

–pedigree collapse inevitable• diamond in ancestor graph

• crowding problem–exponential

• fractal layout–poor info density–no spatial ordering for generations

25[Fig 2, 6, 7. Interactive Visualization of Genealogical Graphs. Michael J. McGuffin, Ravin Balakrishnan. Proc. InfoVis 2005, pp 17-24.]

Page 26: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Layouts

• rooted trees: standard layouts–connection–containment–adjacent aligned position–indented position

26[Fig 8. Interactive Visualization of Genealogical Graphs. Michael J. McGuffin, Ravin Balakrishnan. Proc. InfoVis 2005, pp 17-24.]

Page 27: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Layouts

• free trees–no root

• adapting rooted methods–temporary root for given focus–containment (nested)

27[Fig 9. Interactive Visualization of Genealogical Graphs. Michael J. McGuffin, Ravin Balakrishnan. Proc. InfoVis 2005, pp 17-24.]

Page 28: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Dual trees abstraction

• explore canonical subsets and combinations, easy to interpret, scales well

• no crossings, nodes ordered by generation • doubly rooted: x leftmost descend, y rightmost ancestor

–offset roots from hourglass diagram

28[Fig 10. Interactive Visualization of Genealogical Graphs. Michael J. McGuffin, Ravin Balakrishnan. Proc. InfoVis 2005, pp 17-24.]

Page 29: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Indented, flipped, combined

29[Fig 11. Interactive Visualization of Genealogical Graphs. Michael J. McGuffin, Ravin Balakrishnan. Proc. InfoVis 2005, pp 17-24.]

Page 30: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Another example

• vertical connection• horizontal connection• indented

• upcoming chapters–layering–aggregation

30[Fig 13. Interactive Visualization of Genealogical Graphs. Michael J. McGuffin, Ravin Balakrishnan. Proc. InfoVis 2005, pp 17-24.]

Page 31: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Interaction as fundamental to design

• navigation–topological navigation via collapse/expand on selection

• parents, children• expand can trigger rotation

– collapsing others– layout driven by navigation

–geometric zoom/pan–constrained navigation: automatic camera framing

• animated transitions–3 phases: fade out, move, fade in

• mouseover hover–preview dots: expand if collapsed

31[Fig 14. Interactive Visualization of Genealogical Graphs. Michael J. McGuffin, Ravin Balakrishnan. Proc. InfoVis 2005, pp 17-24.]

Page 32: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Custom widget

• popup marking menu–flick up or down, ballistic–subtree drag-out widget

32[Fig 14. Interactive Visualization of Genealogical Graphs. Michael J. McGuffin, Ravin Balakrishnan. Proc. InfoVis 2005, pp 17-24.]

Page 33: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Paper: ABySS-Explorer

33

Page 34: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

ABySS-Explorer: Design study

• reconstructing genome with ABySS algorithm(Assembly By Short Sequences)

• domain task– go from short subsequences to contigs, long

contiguous sequences– extensive automatic support, but still human in the loop

for visual inspection and manual editing– ambiguities, like repetitions longer than read length

• data, domain:abstract– millions of reads of 25-100 nucleotides (nt): strings– read coverage, proxy for quality: quant attrib– read pairing distances, proxy for size distribution: quant

34Fig 2. ABySS-Explorer: visualizing genome sequence assemblies. Nielsen, Jackman, Birol, Jones. TVCG 15(6):881-8, 2009 (Proc. InfoVis 2009).

Page 35: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Contigs: abstraction as derived network data

• derived data: de Bruijn graph/network– directed network, compact representation of sequence overlaps– node: contig– edge: overlap of k − 1 nt between two contigs – good for computing, bad for reasoning about sequence space

• derived data: dual de Bruijn graph– node: points of contig overlap– edge: contig– better match for arrow diagrams used in hand drawn sketches

• base layout: force-directed

35Fig 3. ABySS-Explorer: visualizing genome sequence assemblies. Nielsen, Jackman, Birol, Jones. TVCG 15(6):881-8, 2009 (Proc. InfoVis 2009).

Page 36: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

DNA as double stranded: idiom for encoding & interaction

• rejected option: 2 nodes per contig– excess clutter if one for each direction– choice at data abstraction level

• encoding & interaction idiom: polar node– encoding: upper vs lower attachment point

• redundant with arc direction– large-scale visibility, without need to zoom

• arbitrary but consistent

– interaction: click to reverse direction• switches polarity of vertex connections• changes sign of label

36Fig 4. ABySS-Explorer: visualizing genome sequence assemblies. Nielsen, Jackman, Birol, Jones. TVCG 15(6):881-8, 2009 (Proc. InfoVis 2009).

Page 37: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Contig length: encoding

• rejected option: scale edge lengths by sequence lengths– short contigs are important sources of ambiguity, would be hard to distinguish– task guidance: only low-res judgements needed, relatively long or short

• encoding idiom: wave pattern – oscillation shows fixed number, shapes distinguishable– min amplitude at connections so edges visible– orientation with max amplitude asymmetric wrt start

• rejected initial option: max in middle• rejected options:

– color (keep for other attribute)– half-lines– curvature (used for polar nodes)

• aligned with empirical guidance for tapered edges 37Fig 5. ABySS-Explorer: visualizing genome sequence assemblies. Nielsen, Jackman, Birol, Jones. TVCG 15(6):881-8, 2009 (Proc. InfoVis 2009).

12K nt

3K nt

Page 38: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Contig coverage: encoding

• rejected options: luminance/lightness– not distinguishable given denseness variation from wave shapes– also problematic with desire for separable color/hue encoding

• chosen: line thickness– not distinguishable for extremely long contigs– can address by adjusting oscillation frequency to suitable size

38

Page 39: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Read pairs: encoding

• data: – distance estimate– orientation

• encoding: – dashed line (shape channel for line mark)

• implying inferred vs observed sequences

– color for both dashed line and contig leaf– [same length as for contigs]– rejected initial option: line color alone

• too ambiguous

– interaction to fully resolve remaining ambiguity– or color by unambiguous paths in grey

39Fig 6. ABySS-Explorer: visualizing genome sequence assemblies. Nielsen, Jackman, Birol, Jones. TVCG 15(6):881-8, 2009 (Proc. InfoVis 2009).

Page 40: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Displaying meta-data

• reserve color for additional attributes• ex: color to compare reference human to

lymphoma genome– inconsistencies visible as interconnections between

different colors– inversion breakpoint visible– interaction to check if error in metadata from

experiments vs assembly• read pair info supports metadata

– speedup claim vs prev work

40Fig 10. ABySS-Explorer: visualizing genome sequence assemblies. Nielsen, Jackman, Birol, Jones. TVCG 15(6):881-8, 2009 (Proc. InfoVis 2009).

Page 41: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Assembly examples

• ideal: single large contig– overview/gist: many small contigs remain

• interaction to resolve– integrate paired read highlighting on top

of contig paths structure

41Fig 7/9. ABySS-Explorer: visualizing genome sequence assemblies. Nielsen, Jackman, Birol, Jones. TVCG 15(6):881-8, 2009 (Proc. InfoVis 2009).

Page 42: Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · • weighted edge between nodes –2 categ attribs: node list x 2 • visual encoding

Reading for next time

• VAD Chapter 11. Manipulate View• VAD Chapter 12. Facet into Multiple Views• paper:

Visualization of Parameter Space for Image Analysis. Pretorius, Ruddle, Bray, Carpenter. TVCG 12(17):2402-2411 2011 (Proc. InfoVis 2011). 

– [type: design study]

42