Ch 8/9: Spatial Data, Networks Paper: Genealogical Graphs ...tmm/courses/infovis/slides/... · •...
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/1.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/2.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/3.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/4.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/5.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/6.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/7.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/8.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/9.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/10.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/11.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/12.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/13.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/14.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/15.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/16.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/17.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/18.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/19.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/20.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/21.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/22.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/23.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/24.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/25.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/26.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/27.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/28.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/29.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/30.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/31.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/32.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/33.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/34.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/35.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/36.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/37.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/38.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/39.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/40.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/41.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022070806/5f044e567e708231d40d52da/html5/thumbnails/42.jpg)
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