Visualization Analysis & Design Full-Day Tutorial Session 2 Tamara Munzner Department of Computer Science University of British Columbia

Sanger Institute / European Bioinformatics Institute June 2014, Cambridge UK http://www.cs.ubc.ca/~tmm/talks.html#minicourse14 Outline • Analysis Framework • Idiom Design Choices Session 1 9:30-10:45am Session 2 11:00am-12:15pm – Introduction: Definitions – Arrange Tables – Analysis: What, Why, How – Arrange Spatial Data – Marks and Channels – Arrange Networks and Trees – Color • Idiom Design Choices, Part 2 • Guidelines and Examples Session 3 1:15pm-2:45pm Session 4 3-4:30pm – Manipulate: Change, Select, Navigate – Rules of Thumb – Facet: Juxtapose, Partition, Superimpose – Validation – Reduce: Filter, Aggregate, Embed – BioVis Analysis Example

http://www.cs.ubc.ca/~tmm/talks.html#minicourse14 2 How?

EncodeEncode Manipulate Manipulate Facet Facet ReduReducece

Arrange Map Change Juxtapose Filter Express Separate from categorical and ordered attributes Color Hue Saturation Order Align Luminance Select Partition Aggregate

Size, Angle, Curvature, ...

Use Navigate Superimpose Embed Shape

Motion Direction, Rate, Frequency, ...

3 Arrange space Encode

Arrange Express Separate

Order Align

Use

4 Arrange tables

Express Values Axis Orientation Rectilinear Parallel Radial

Separate, Order, Align Regions Separate Order Layout Density Dense Space-Filling Align

1 Key 2 Keys 3 Keys Many Keys List Matrix Volume Recursive Subdivision

5 Keys and values Tables • key Attributes (columns) Items – independent attribute (rows)

– used as unique index to look up items Cell containing value – simple tables: 1 key – multidimensional tables: multiple keys Multidimensional • value – dependent attribute, value of cell Value in cell • classify arrangements by key count – 0, 1, 2, many...

Express Values 1 Key 2 Keys 3 Keys Many Keys List Matrix Volume Recursive Subdivision

6 Idiom: scatterplot Express Values • express values – quantitative attributes • no keys, only values – data • 2 quant attribs – mark: points – channels • horiz + vert position – tasks • find trends, outliers, distribution, correlation, clusters – scalability • hundreds of items

[A layered grammar of graphics. Wickham. Journ. Computational and Graphical Statistics 19:1 (2010), 3–28.] 7 Some keys: Categorical regions

Separate Order Align

• regions: contiguous bounded areas distinct from each other – using space to separate (proximity) – following expressiveness principle for categorical attributes • use ordered attribute to order and align regions 1 Key 2 Keys 3 Keys Many Keys List Matrix Volume Recursive Subdivision

8 Idiom: bar 100 100 • one key, one value 75 75 50 50 – data 25 25 • 1 categ attrib, 1 quant attrib 0 0 – mark: lines – channels Animal Type Animal Type • length to express quant value • spatial regions: one per mark – separated horizontally, aligned vertically – ordered by quant attrib » by label (alphabetical), by length attrib (data-driven) – task • compare, lookup values – scalability

• dozens to hundreds of levels for key attrib 9 Idiom: stacked bar chart • one more key – data • 2 categ attrib, 1 quant attrib – mark: vertical stack of line marks • glyph: composite object, internal structure from multiple marks – channels [Using Visualization to Understand the • length and color hue Behavior of Computer Systems. Bosch. Ph.D. • spatial regions: one per glyph thesis, Stanford Computer Science, 2001.] – aligned: full glyph, lowest bar component – unaligned: other bar components – task • part-to-whole relationship – scalability

• several to one dozen levels for stacked attrib 10 Idiom: streamgraph • generalized stacked graph – emphasizing horizontal continuity • vs vertical items [Stacked Graphs Geometry & Aesthetics. Byron and Wattenberg. – data IEEE Trans. Visualization and (Proc. InfoVis • 1 categ key attrib (artist) 2008) 14(6): 1245–1252, (2008).] • 1 ordered key attrib (time) • 1 quant value attrib (counts) – derived data • geometry: layers, where height encodes counts • 1 quant attrib (layer ordering) – scalability • hundreds of time keys • dozens to hundreds of artist keys

– more than stacked bars, since most layers don’t extend across whole chart 11 Idiom: line chart 20 • one key, one value 15 – data 10 • 2 quant attribs 5 – mark: points 0 • line connection marks between them – channels Year • aligned lengths to express quant value • separated and ordered by key attrib into horizontal regions – task • find trend – connection marks emphasize ordering of items along key axis by explicitly showing relationship between one item and the next

12 Choosing bar vs line 60 60 50 50 40 40 • depends on type of key attrib 30 30 20 20 – bar charts if categorical 10 10 0 0 – line charts if ordered Female Male Female Male • do not use line charts for 60 60 50 50 categorical key attribs 40 40 30 30 – violates expressiveness principle 20 20 10 10 • implication of trend so strong that 0 0 10-year-olds 12-year-olds 10-year-olds 12-year-olds it overrides semantics! – “The more male a person is, the after [Bars and Lines: A Study of Graphic Communication. taller he/she is” Zacks and Tversky. Memory and Cognition 27:6 (1999), 1073–1079.]

13 Idiom: heatmap • two keys, one value – data • 2 categ attribs (gene, experimental condition) • 1 quant attrib (expression levels) – marks: area • separate and align in 2D matrix – indexed by 2 categorical attributes 1 Key 2 Keys Many Keys – channels List Matrix Recursive Subdivision • color by quant attrib – (ordered diverging colormap) – task • find clusters, outliers – scalability

• 1M items, 100s of categ levels, ~10 quant attrib levels 14 Idiom: cluster heatmap • in addition – derived data • 2 cluster hierarchies – dendrogram • parent-child relationships in tree with connection line marks • leaves aligned so interior branch heights easy to compare – heatmap • marks (re-)ordered by cluster hierarchy traversal

15 Axis Orientation Rectilinear Parallel Radial

16 Idioms: scatterplot matrix, parallel coordinates • scatterplot matrix (SPLOM) Scatterplot Matrix Parallel Coordinates Math Physics Dance Drama – rectilinear axes, point mark Math 100 – all possible pairs of axes 90 Physics 80 70 – scalability 60 Dance 50 • one dozen attribs 40 30 • dozens to hundreds of items 20 Drama 10 • parallel coordinates Math Physics Dance Drama 0

– parallel axes, jagged line representing item Table

– rectilinear axes, item as point Math Physics Dance Drama • axis ordering is major challenge 85 95 70 65 90 80 60 50 – scalability 65 50 90 90 50 40 95 80 • dozens of attribs 40 60 80 90 • hundreds of items after [Visualization Course Figures. McGuffin, 2014. http://www.michaelmcguffin.com/courses/vis/] 17 Task: Correlation • scatterplot matrix – positive correlation • diagonal low-to-high – negative correlation • diagonal high-to-low [A layered grammar of graphics. Wickham. Journ. Computational and Graphical Statistics – uncorrelated 19:1 (2010), 3–28.] • parallel coordinates – positive correlation • parallel line segments – negative correlation • all segments cross at halfway point – uncorrelated [Hyperdimensional Using Parallel Coordinates. • scattered crossings Wegman. Journ. American Statistical Association 85:411 (1990), 664–675.] 18 Idioms: radial bar chart, star • radial bar chart – radial axes meet at central ring, line mark • star plot – radial axes, meet at central point, line mark • bar chart – rectilinear axes, aligned vertically

• accuracy – length unaligned with radial • less accurate than aligned with rectilinear

[Vismon: Facilitating Risk Assessment and Decision Making In Fisheries Management. Booshehrian, Möller, Peterman, and Munzner. Technical Report TR 2011-04, Simon Fraser University, School of Computing Science, 2011.] 19 Idioms: pie chart, polar area chart • pie chart – area marks with angle channel – accuracy: angle/area much less accurate than line length

• polar area chart – area marks with length channel – more direct analog to bar charts

• data – 1 categ key attrib, 1 quant value attrib • task – part-to-whole judgements [A layered grammar of graphics. Wickham. Journ. Computational and Graphical Statistics 19:1 (2010), 3–28.] 20 Idioms: normalized stacked bar chart3/21/2014 bl.ocks.org/mbostock/raw/3886394/ 100%

65 Years and Over 90%

80%

• task 45 to 64 Years 70%

60%

– part-to-whole judgements 50%

25 to 44 Years 40%

30% 18 to 24 Years

20% 14 to 17 Years

10% 5 to 13 Years

Under 5 Years • normalized stacked bar chart 3/21/200%14 bl.ocks.org/mbostock/raw/3886208/ UT TX ID AZ NV GA AK MS NMNE CA OK SDCO KS WY NC AR LA IN IL MNDE HI SCMOVA IA TN KY AL WAMDNDOH WI OR NJ MT MI FL NY DC CT PA MAWV RI NHME VT n o

i 65 Years and Over t a 35M l u 45 to 64 Years p o – stacked bar chart, normalized to full vert height P 25 to 44 Years 18 to 24 Years 30M 14 to 17 Years

5 to 13 Years

Under 5 Years – single stacked bar equivalent to full pie 25M • high density: requires narrow rectangle 20M 15M

10M

5.0M

0.0 • pie chart CA TX NY FL IL PA OH MI GA3N/2C1/N2J01V4A WA AZ MA IN TN MO MD WI MN CO AL SC LA KY OR OK CT IAblM.oScAksR.oKrgS/mUbToNstVocNkM/rWawV/N38E86ID39M4E/ NH HI RI MT DE SD AK ND VT DC WY

100% 3/21/2014 bl.ocks.org/mbostock/raw/3887235/

65 Years and Over – information density: requires large circle 90% 80%

≥65 70% <5 45 to 64 Years

45-64 5-13 60%

14-17 50%

18-24 25 to 44 Years http://bl.ocks.org/mbostock/3887235, 40% http://bl.ocks.org/mbostock/raw/3886394/ 1/1 30% 25-44 18 to 24 Years http://bl.ocks.org/mbostock/3886208, 20% 14 to 17 Years

10% 5 21to 13 Years

http://bl.ocks.org/mbostock/3886394. Under 5 Years 0% UT TX ID AZ NV GA AK MS NMNE CA OK SDCO KS WY NC AR LA IN IL MNDE HI SCMOVA IA TN KY AL WAMDNDOH WI OR NJ MT MI FL NY DC CT PA MAWV RI NHME VT

http://bl.ocks.org/mbostock/raw/3886208/ 1/1

http://bl.ocks.org/mbostock/raw/3887235/ 1/1

http://bl.ocks.org/mbostock/raw/3886394/ 1/1 Two types of glyph – lines and stars – are especially useful for temporal displays. F igure displays 1 2 3

iconic time series shapes with line- and star- glyphs. The data underlying each glyph is measured at 6 time 3

points. The line- glyphs are time series plots. The star- glyphs are formed by considering the 6 axes radiating 3

from a common midpoint, and the data values for the row are plotted on each axis relative to the locations

Idiom: glyphmaps of the minimum and maximum of the variable. This is a polar transformation of the line- glyph. Two types of glyph – lines and stars – are especially useful for temporal displays. F igure displays 1 2 3 iconic time series shapes with line- and star- glyphs. The data underlying each glyph is measured at 6 time 3 points. T•herectilinearline- glyphs a rgoode time sforerie slinearplots. T vshe star- glyphs are formed by considering the 6 axes radiating 3 from a comnonlinearmon midpo intrendst, and the data values for the row are plotted on each axis relative to the locations of the minimum and maximum of the variable. This is a polar transformation of the line- glyph.

F igure : I con plots for 1 2 iconic time series shapes ( linear increasing, decreas3ing, shifted, single peak, single dip, combined linear and nonlinear, seasonal trends with different scales, and a combined linear and seasonal trend) in • radial good for cyclic patterns E uclidean coordinates, time series icons ( left) and polar coordinates, star plots ( right) .

The paper is structured as follows. S ection 2 describes the algorithm used to create glyphs- . S ec-

tion discusses their perceptual properties, including the importance of a vi3sual reference grid, and of

F igure : I con plots for 1 2 iconic time series shapes ( linecaarr[Glyph-mapseinfcurlelyas ciforno Visuallygn,sdide Exploringecreaatis3 oTemporalinng,ofs hPatternssicfatelde in., ClimateL sianrgg Datalee pd andeaat Models.ka, asni ndgltehediipn,terplay of models and data are discussed in S ection 4 . combined linear and nonlinear, seasonal trends with differenWickham,t scal eHofmann,s, an dWickham,a co andmb Cook.ine Environmetricsd linear 23:5and (2012),sea 382–393.]sonal trend) in E uclidean coordinates, time series icons ( left) and polar cooMrdainnaytessp, asttaior tpelmotspo( rriaglhdt)a. ta sets have irregular spatial lo22cations, and S ection 5 discusses how glyph- maps can

be adjusted for this type of data. Three datasets are used for examples: The paper is structured as follows. S ection 2 describes the algorithm used to create glyphs- maps. S ec- tion discusses their perceptual properties, includindgattah- exipmopoTrhteanAcSeAof2 0a0 v9i3sduaatlareefxeproendcaetagr(idM, uarnredll,of2 0 1 0 ) consists of monthly observations of sev- carefully consideration of scale. L arge data and the interplay of meroadlealstmaonsdpdhaetraicavraerdiaisbcleusssferdomintSheecItniotner4n.ational S atellite C loud C limatology P roject. The

M any spatiotemporal data sets have irregular spatial locations, anddatSaesectiionncl5uddeisscoubssersvhaotiwongslyopvhe-rm7 2apms ocnanths ( 1 9 9 5 –2 0 0 0 ) on a 2 4 x 2 4 grid ( 5 7 6 locations) be adjusted for this type of data. Three datasets are used for examstrpeletcsh: ing from 1 1 3 .7 5 W to 5 6 .2 5 W longitude and 2 1 .2 5 S to 3 6 .2 5 N latitude.

G I S TE M P surface temperature data provided on 2 x 2 grid over the entire globe, measured monthly data- expo The A S A 2 0 0 9 data expo data ( M urrell, 2 0 1 0 ) consists of monthly observations of sev- ( E arth S ystem R esearch L aboratory, P hysical S ciences D ivision, N ational O ceanic and A tmo- eral atmospheric variables from the I nternational S atellite C loud C limatology P roject. The spheric A dministration, 2 0 1 1 ) . G round station data was de- seasonalized, differenced from dataset includes observations over 7 2 months ( 1 9 9 5 –2 0 0 0 ) on a 2 4 x 2 4 grid ( 5 7 6 locations) from the 1 9 5 1 - 1 9 8 0 temperature averages, and spatially averaged to obtain gridded mea- stretching from 1 1 3 .7 5 W to 5 6 .2 5 W longitude and 2 1 .2 5 S to 3 6 .2 5 N latitude. surements. F or the purposes of this paper, we extracted the locations corresponding to the G I S TE M P surface temperature data provided on 2 x 2 grid over the entire globe, measured monthly continental US A . ( E arth S ystem R esearch L aboratory, P hysical S ciences D ivision, N ational O ceanic and A tmo- US H C N ( Version 2 ) ground station network of historical temperatures ( N ational O ceanic and A t- spheric A dministration, 2 0 1 1 ) . G round station data was de- seasonalized, differenced from mospheric A dministration, N ational C limatic D ata C enter, 2 0 1 1 ) . Temperatures from 1 2 1 9 from the 1 9 5 1 - 1 9 8 0 temperature averages, and spatially averaged to obtain gridded mea- stations on the contiguous United S tates, from 1 8 7 1 to present. surements. F or the purposes of this paper, we extracted the locations corresponding to the

continental US A . 4 US H C N ( Version 2 ) ground station network of historical temperatures ( N ational O ceanic and A t-

mospheric A dministration, N ational C limatic D ata C enter, 2 0 1 1 ) . Temperatures from 1 2 1 9

stations on the contiguous United S tates, from 1 8 7 1 to present.

4 Orientation limitations Axis Orientation • rectilinear: scalability wrt #axes • 2 axes best Rectilinear • 3 problematic – more in afternoon • 4+ impossible • parallel: unfamiliarity, training time Parallel • radial: perceptual limits – angles lower precision than lengths – asymmetry between angle and length • can be exploited! Radial [Uncovering Strengths and Weaknesses of Radial Visualizations - an Empirical Approach. Diehl, Beck and Burch. IEEE TVCG (Proc. InfoVis) 16(6):935--942, 2010.]

23 Further reading • Visualization Analysis and Design. Munzner. AK Peters / CRC Press, Oct 2014. – Chap 7: Arrange Tables • Visualizing Data. Cleveland. Hobart Press, 1993. • A Brief History of . Friendly. 2008. http://www.datavis.ca/milestones

24 Outline • Visualization Analysis Framework • Idiom Design Choices Session 1 9:30-10:45am Session 2 11:00am-12:15pm – Introduction: Definitions – Arrange Tables – Analysis: What, Why, How – Arrange Spatial Data – Marks and Channels – Arrange Networks and Trees – Map Color • Idiom Design Choices, Part 2 • Guidelines and Examples Session 3 1:15pm-2:45pm Session 4 3-4:30pm – Manipulate: Change, Select, Navigate – Rules of Thumb – Facet: Juxtapose, Partition, Superimpose – Validation – Reduce: Filter, Aggregate, Embed – BioVis Analysis Example

http://www.cs.ubc.ca/~tmm/talks.html#minicourse14 25 Arrange spatial data Use Given Geometry Geographic Other Derived

Spatial Fields Scalar Fields (one value per cell) Isocontours Direct

Vector and Tensor Fields (many values per cell) Flow Glyphs (local) Geometric (sparse seeds) Textures (dense seeds) Features (globally derived) 26 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 http://bl.ocks.org/mbostock/4060606 – use given geometry for area mark boundaries – sequential segmented colormap

27 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

Land Information New Zealand Data Service

28 Idiom: isosurfaces • data – scalar spatial field • 1 quant attribute per grid cell • derived data – isosurface geometry • isocontours computed for specific levels of scalar values • task – spatial relationships [Interactive Volume Rendering Techniques. Kniss. Master’s thesis, University of Utah Computer Science, 2002.]

29 F A B C D E A B C Idioms: DVR, multidimensional transferData Value functions

• direct volume rendering F A B C D E – transfer function maps scalar A B C values to color, opacity Data Value • no derived geometry

• multidimensional transfer functions F A B C D d E – derived data in joint 2D histogram A B C • horiz axis: data values of scalar func Data Value • vert axis: gradient magnitude (direction of fastest change) f • [more on cutting planes and c histograms later] d

[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.] 30 b f c e

b

e Vector and tensor fields • data – – many attribs per cell • idiom families – flow glyphs • purely local – geometric flow • derived data from tracing particle trajectories [Comparing 2D vector field visualization methods: A user study. Laidlaw et al. IEEE Trans. • sparse set of seed points Visualization and Computer Graphics (TVCG) 11:1 (2005), 59–70.] – texture flow • derived data, dense seeds – feature flow

• global computation to detect features Saddle Point: Repelling Focus: Attracting Focus: Repelling Node: Attracting Node: R1<0, R2>0, R1 = R2 >0, R1 = R2 < 0, R1, R2 > 0, R1, R2 < 0, – encoded with one of methods above [Topology I1 = I2 = tracking 0 for I1 the = ! visualizationI2 <> 0 of I1 time-dependent = !I2 <> 0 two-dimensional I1 = I2 = 0 flows. I1 =Tricoche, I2 = 0 Wischgoll, Scheuermann, and Hagen. Computers & Graphics 26:2 (2002), 249–257.] Fig. 1. Common rst order singularity types 31 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 specic 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, dened 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 c a, 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 w∀ay∈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 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)

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

Saddle Point: Repelling Focus: Attracting Focus: Repelling Node: Attracting Node: R1<0, R2>0, R1 = R2 >0, R1 = R2 < 0, R1, R2 > 0, R1, R2 < 0, [Topology I1 = I2 = tracking 0 for I1 the = ! visualizationI2 <> 0 of I1 time-dependent = !I2 <> 0 two-dimensional I1 = I2 = 0 flows. I1 =Tricoche, I2 = 0 Wischgoll, Scheuermann, and Hagen. Computers & Graphics 26:2 (2002), 249–257.] Fig. 1. Common rst order singularity types 32 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 specic 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, dened 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 c a, 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 w∀ay∈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 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 [Similarity Measures for Enhancing Interactive Streamline Seeding. • scalability McLoughlin,. Jones, Laramee, Malki, Masters, and. Hansen. IEEE Trans. Visualization and Computer Graphics 19:8 (2013), 1342–1353.]

– millions of samples, hundreds of streamlines 33 Further reading • Visualization Analysis and Design. Munzner. AK Peters / CRC Press, Oct 2014. – Chap 8: Arrange Spatial Data • How Maps Work: Representation, Visualization, and Design. MacEachren. Guilford Press, 1995. • Overview of visualization. Schroeder and. Martin. In The Visualization Handbook, edited by Charles Hansen and Christopher Johnson, pp. 3–39. Elsevier, 2005. • Real-Time Volume Graphics. Engel, Hadwiger, Kniss, Reza-Salama, and Weiskopf. AK Peters, 2006. • Overview of flow visualization. Weiskopf and Erlebacher. In The Visualization Handbook, edited by Charles Hansen and Christopher Johnson, pp. 261–278. Elsevier, 2005.

34 Outline • Visualization Analysis Framework • Idiom Design Choices Session 1 9:30-10:45am Session 2 11:00am-12:15pm – Introduction: Definitions – Arrange Tables – Analysis: What, Why, How – Arrange Spatial Data – Marks and Channels – Arrange Networks and Trees – Map Color • Idiom Design Choices, Part 2 • Guidelines and Examples Session 3 1:15pm-2:45pm Session 4 3-4:30pm – Manipulate: Change, Select, Navigate – Rules of Thumb – Facet: Juxtapose, Partition, Superimpose – Validation – Reduce: Filter, Aggregate, Embed – BioVis Analysis Example

http://www.cs.ubc.ca/~tmm/talks.html#minicourse14 35 Arrange networks and trees

Arrange Networks and Trees Node–Link Connection Marks

NETWORKS TREES

Adjacency Matrix Derived Table

NETWORKS TREES

Enclosure Containment Marks

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

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 12%3'3%,45#'6)$*#78%$#*.#8'9$/42'32)&3'*2/$/*.#$'*)7)**+$#-*#'%-'!"#$%&#'()*+"#:';'42<3%*/5'3%,+5/.%)-')6 • tasks *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#/$#-*#'%- – explore topology; locate paths, clusters C%*.)$'D+9)E3'!"#$%&#'()*+"#>'*),4%5#8'@<'()-/58'F-+.2: )*+,-'./*0'

• scalability != !!"#!"#$%&!$!'()* !8 !!!!!&+#,&%!$!-)). !3 ! – node/edge density E < 4N !R !!"#!/0102!$!$345/61+4/6%+,0278)9:. !- ! http://mbostock.github.com/d3/ex/force.html 37 !( !!"#!;02/+!$!$341670<%4;02/+9: !S !!!!!4/&62,+9%=8): !T !!!!!41#>?@#5%6>/+93): !' !!!!!45#A+9B"#$%&*!&+#,&%C:. =) ! == !!"#!5D,!$!$345+1+/%9EF/&62%E:46GG+>$9E5D,E: =8 !!!!!46%%29E"#$%&E*!"#$%&: =3 !!!!!46%%29E&+#,&%E*!&+#,&%:. =R ! =- !$34H50>9EI#5+26J1+54H50>E*!&'()*+,(9H50>:!K =( !!!;02/+ =S !!!!!!!4>0$+59H50>4>0$+5: =T !!!!!!!41#>?59H50>41#>?5: =' !!!!!!!45%62%9:. 8) ! 8= !!!!"#!1#>?!$!5D,45+1+/%L119E1#>+41#>?E: 88 !!!!!!!4$6%69H50>41#>?5: 83 !!!!!4+>%+29:46GG+>$9E1#>+E: 8R !!!!!!!46%%29E/1655E*!E1#>?E: 8- !!!!!!!45%71+9E5%20?+M"#$%&E*!&'()*+,(9$:!K!#-*'#(!N6%&45O2%9$4D61<+:.!P:. 8( ! 8S !!!!"#!>0$+!$!5D,45+1+/%L119E/#2/1+4>0$+E: 8T !!!!!!!4$6%69H50>4>0$+5: 8' !!!!!4+>%+29:46GG+>$9E/#2/1+E: 3) !!!!!!!46%%29E/1655E*!E>0$+E: 3= !!!!!!!46%%29E2E*!-: 38 !!!!!!!45%71+9E;#11E*!&'()*+,(9$:!K!#-*'#(!/01029$4,200$+46GG+>$9E%#%1+E: 3( !!!!!!!4%+Q%9&'()*+,(9$:!K!#-*'#(!$4>6I+.!P:. 3S ! 3T !!!;02/+40>9E%#/?E*!&'()*+,(9:!K 3' !!!!!1#>?46%%29EQ=E*!&'()*+,(9$:!K!#-*'#(!$450<2/+4Q.!P: 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 [Efficient and high quality force-directed graph drawing. • (more on algorithm vs encoding in afternoon) Hu. The Mathematica Journal 10:37–71, 2005.] • scalability – nodes, edges: 1K-10K – hairball problem eventually hits

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

i i

7.1. Using Space 135

Idiom: adjacency matrix view • data: network – transform into same data/encoding as heatmap

[NodeTrix: a Hybrid Visualization of Social Networks. • derived data: table from network Henry, Fekete, and McGuffin. IEEE TVCG (Proc. InfoVis) Figure 7.5: Comparing13(6):1302-1309, matrix and 2007.] node-link views of a five-node network. – 1 quant attrib a) Matrix view. b) Node-link view. From [Henry et al. 07], Figure 3b and 3a. (Permission needed.) • weighted edge between nodes – 2 categ attribs: node list x 2 the number of available pixels per cell; typically only a few levels would be distinguishable between the largest and the smallest cell size. Network matrix views can also show weighted networks, where each link has an as- • visual encoding sociated quantitative value attribute, by encoding with an ordered channel such as color luminance or size. – cell shows presence/absence of edge For undirected networks where links are symmetric, only half of the matrix needs to be shown, above or below the diagonal, because a link • scalability from node A to node B necessarily implies a link from B to A. For directed networks, the full square matrix has meaning, because links can be asym- – 1K nodes, 1M edges metric. Figure 7.5 shows a simple example of an undirected network, with a matrix view of the five-node dataset in Figure 7.5a and a corresponding node-link view in Figure 7.5b. Matrix[Points views of view: of Networks. networks Gehlenborg can achieve and Wong. very Nature high Methods information 9:115.] density, up to a limit of one thousand nodes and one million edges, just like cluster heatmaps and all other matrix views that uses small area marks.39

Technique network matrix view Data Types network Derived Data table: network nodes as keys, link status between two nodes as values View Comp. space: area marks in 2D matrix alignment Scalability nodes: 1K edges: 1M

......

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

i i

i i Connection vs. adjacency comparison • adjacency matrix strengths – predictability, scalability, supports reordering – some topology tasks trainable • node-link strengths – topology understanding, path tracing

– intuitive, no training needed http://www.michaelmcguffin.com/courses/vis/patternsInAdjacencyMatrix.png • empirical study – node-link best for small networks – matrix best for large networks • if tasks don’t involve topological structure! [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.] 40 !"#$"%#& '!"#$%&'( '()*+,#-./.%)- '0)+$*# #-./0 !"#$%&'()*+,$$

G

3

F / % @ (

" 8 D 2 / 8

> * $ : " # $ B ) = # $ * D < F 8 , * % # $ * $ 3 $ % " ) % & ( ) % $ > ) " 8 $ * $ ( 8 % 8 " A = - ) & 8 & 6 # B # $ 8 * & B $ " / $ B # # B A / " = $ . # 8 * * $ K 2 # $ $ # 0

9 # ( $ ) " 7 = $ $ Idiom: radial node-link tree $ # 8 ) " $ $ < ) $ < D # < < " 8 % $ < - * 0 8 < - <

" < " " @ 9 " < " . & . " < " # ? $ "

< ' " ' ) 5 8 ' $ $ < " ' + ' ) " ' < ' + / / " ' / > N ) / 5 " D " ' / " / < " ' / / , ' , ) , $ ) < / , ' , + + & / / , A < " ' / , # ' , ( ( 3 ' ( ( ( ) " / , ( < ( H , / , ( ) ' $ # $ " " , ( & 3 ( I $ / 5 " H , ( ( ) / ( , ( % H # ) B & $ ( " " + 9 C ) $ ( # H 9 * ( , ( # # $ , $ 9 $ ' # ( & , $ $ ( $ $ $ @ & $ ( & $ @ ( 2 # 7 $ I % $ @ & * ) ( # # ) $ + + / ' 7 2 % @ & # " $ # ( , 5 7 ) # 9 & , # & % * ( $ 3 $ ( / ) ( & $ $ & ( 2 : 7 $ $ / % / ( 1 * # I # , = ' $ / ) + ) 7 # 2 % / # 3 * ( O $ 8 # & + + % # " / # / 9 3 $ 2 $ % * 8 $ ' $ # > ( " " 5 * ( " ( $ • data / I # * 8 % $ # * $ ) ( # $ . $ / * ) " > ) / I + ) # ( / 8 $ % : / # $ % # & % " # E 8

9 > ) ( # ( + 8 $ " 6 B " # / # 5 % / 9 3 " & / # , , A ) ) ( $ 0 " $ # 7 ( ( / + / # ( * ( . ( & $ ; / ( ( & $ / # / ; # ( # $ + ( # ) " # / $ " / # 0 ) + % " / & / & / " / ( " $ 9 # ) & # " & " / ( % ) ) # # / % ' " . $ 9 & < # / F ( ( . D ( 0 > ( / # ; ( % # " ) I / * @ # # % * ( $ / & / ( / ( # 9 " ) $ = . ( 9 & / $ / + ) $ ? % # 5 * / / % 9 , $ ( 9 # / # / ( $ % % ( # / ( " $ # - ) " 9 2 $ $ & ( 4 F " $ 6 % " 5 ( " $ ( 9 & # : F & < 9 9 ' ( # # H 6 # % % / $ " 3 + F / F $ ( 3 " / % # ( 9 $ T ( $ # & $ 9 F # % – tree - # # F / ( ? $ % % &( & / ) F $ $ # - " $ # H ( ( &$ < * 2 ( ( / # * % . $ 8 > % " 0 $ (F % . ) 8 F , J < $ + $ $ 6 H )% (" N % ( * G $ / # N I / * )+ . 8 # % $ , ( ) A $ D ) + $ " / % D & % " , , 3 )C < 8 % % / # 5 " $ " # ) E $ " 3 B F( . / ( #( ( . & $ $ 9 / ) $ $ 9 ) " $ $ ( $ / $ C $ 1 D &$ / % 0 5 C 3 & $ + % $ &( 7 % " ) $ H # 7 F * ) 8 9 % ( / 8 D % ( 9 # ( , . ($ ) 1 " & 0 " 2 • encoding . 8 / 7 ) " ) / " & + ( # $ > & $ $ $ / # ) # ? $ * % D % # " % 1 % ( ( ) ( , $ 1 8 $ 7 / % / ( $ $ ( $ . * # % - % $ # " 1 ( 9 + 9 8 & B # # 8 #$ % # # $ 8 / #/ $ # B 7 $ ( / " % # $ $ 1 $ 2 ($ ; #$ 1 % $ && $ % )( < # # B #$ $ ( 7 , ( 5 & $ $ $ ' # $ * " $ , / )0 6 1 #( 9 3 : % @ % # * ( 2 & 5 % $ * , ( ) + 8 % % # % $ 9 / 1$ " )&8 F3 " , $ $ / $ $ > " 2 % &$ $ &$ A " 5 , () % 1 # (" / : B# # . * ) / 7 K " 2 )% $ $ A E + )() % > G G # 8) $ % 3 $ % + )/ F I /8 $% %. 8 3 #" % )( L3 – link connection marks 78 $3 8$ $ B " + # % .$ 9# # 1$ + B " $% > 3 )( * # #+ " 9 $ % ) B $ ("3 #)( (+ ( ; #($ 9 $ ' B 8 & $ & " >" #)($ 1 )$ 0 ( " % "<) / "@ 5$ + % * ( * >" ( ($ " 3 " ( B/ (" " > (" $ $ 3 /&()9 8" >" "3 ,#* $&$* 2/% (" )0 "( 3/ A" ()/%2 (#/ % > (" H&$ – point node marks %S/ /%( & " >" B" /0 #/ (" 2/% & >" ()& F (#/& ("M 4 2/%(# 1 >" /1$#2/ /& )+ #)($ 7?9" %(#/& (" #('39 %82/% 8" >) 9#)($ >#" (#/& <)%$3 .2/%(#/& * (39#)($ 2/%(# /%(#/&+ D$* /&<)+( ' $?(39#)($ – radial axis orientation 2/%(#/& 8)+9&" B 2&)*=2/%(#/& #$N)+ -%*5/#2/%(#/& !$? @&" ! " >#".@/#*$ "#($+)"%-?$+ # 2 ?)+ $ 95 K#"1)('@/# -?)+<"H$& " '+)*+ F@/ *$ <)%$ #*$ • angular proximity: siblings -?)+K#)8 + G:/8 -?)+ 3(#)%. A" '@/#*$ ?$+ ("(+ #()*&$ - 3 #( 3)0, 3/ ()& 39 &"()/ 9$+ , 3 #)%. % 35" #(' 9#)% 9$ $ .@/ A#/ $(( - #*$ "& % E - .. • distance from center: depth in tree 9 ()/ + , % #$. (" 5 $ - 8 " % ( $ ( $ " 5 & # #) $ ($ #) 6 ( ' - (5 7? $( I " ' " 1$ 0 9 & 0 ? * : $ # A" (($ / $ )% #" () $+ )C$ "&$ $ A# ( + 2 " . * +)/ 3 $A $(( $ *" &$ 2 /0 #' $ % 9 "& ($ &, 8) H 9 / 7 5" A $( " $ " " 2 0 9 ? 3 "& FN # &, $ #' > / 9 " 9 #A FA " ( # > " , / #)+ #$ &/ (#)? 1 5 $ $ ( % + / + / " )? F7 0 )&( + 7 )+ $ ( )( % +) 2 6 (# / @ ' + 7 ? () M $ /% +$ " #)? $ &" $ + @ ? 9 % () 7 # F6 ( 9 ( # + F % 9 # * & ? • tasks " " K + " / F O $ ( 9 9 ) & ' # + # 3 6 > / < + $ $ +$ > #" &$ 6 - + + + % 2 # $ 6 )( + )/ + " $ 0 " $ ) $ - 9 & $ 6 ) % / > * & G " # / ' $ I $ ( % $ " & Q " % $ D * 3 3 ) ? 3 8 B " & $ N / % 9 * & $ ( & F # 5 / " & $ # ) $ * " & 9 " , 5 0 ( " $ $ " ( ( , ) G & 3 * " 0 $ " " / # $ * " / 0 3 " * % $ 8 9 # ) # ) " * 0 , " ( 3 * % " 4 ) 8 " ) * R , 8 # * 3 % " . " % B 6 0 * / 3 ' ( $ $ . $ & 3 0 + / 1 8 * 3 " H $ * 4 3 1 & $ / ) " ) ) " . # & M # / $ # 8 ( ( & # % D $ , " " " % / ( 8 ) / " % ) " + – understanding topology, following paths ) % . * ( $ & $ ) H ) < 1 ( ) 8 N ) ( ( " O E % $ @ # % 3 % , ) . * % F ( I < . ( " Q )O ( , ) O $ & + & ( " Q 0 ( 0 $ 0 0 " % ) % / % ? / / $ , # + / 8 + + " # + , 1 # E & $ ( # ( , 8 ,

" % P 9 $ 8 & / # $ H $ 0 . # 8 8

? )

$ # • scalability " * $ " $ H

5 (

%

( 1 '

$

; *

$ – 1K - 10K nodes 12#'!"##'3/4)+.'%,53#,#-.6'.2#'7#%-8)39:1%3;)$9'/38)$%.2,';)$'#;<*%#-.='.%94'/$$/-8#,#-.');'3/4#$#9'-)9#6>'12# http://mbostock.github.com/d3/ex/tree.html9#5.2');'-)9#6'%6'*),5+.#9'?4'9%6./-*#';$),'.2#'$)).='3#/9%-8'.)'/'$/88#9'/55#/$/-*#>'@41/$.#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'

$9 $!"#$"%&'()$$$*+,$%$-. $- $ $/ $!"#$!"##$$$&/01%23(!0!"##45 $Q $$$$$0)'6#47/+,8$"%&'()$&$9-,:5 $M $$$$$0)#;%"%!'3<4'()*+,-)4%8$=5$>$#.+(#)$4%0;%"#$#.+(#)$7&028$&0E$%$9F,$1$G%!?0HI:.$@5. $* $ 9, $!"#$B')$$$&/0)#1#D!4JKD?%"!J50%;;#<&4J)BAJ5 99 $$$$$0%!!"4JL'&!?J8$"%&'()$1$-5 9- $$$$$0%!!"4J?#'A?!J8$"%&'()$1$-$&$9M,5 9/ $$$0%;;#<&4JAJ5 9Q $$$$$0%!!"4J!"%<)N3"OJ8$J!"%<)1%!#4J$2$"%&'()$2$J8J$2$"%&'()$2$J5J5. 9M $ 9+ $&/0C)3<4J00P&%!%PN1%"#0C)3 9R $$$!"#$<3&#)$$$!"##0<3&#)4C)3<5. Idiom: treemap • data – tree – 1 quant attrib at leaf nodes • encoding – area containment marks for hierarchical structure – rectilinear orientation – size encodes quant attrib • tasks http://tulip.labri.fr/Documentation/3_7/userHandbook/html/ch06.html – query attribute at leaf nodes • scalability – 1M leaf nodes

42 Link marks: Connection and Containment

• marks as links (vs. nodes) Containment Connection – common case in network drawing – 1D case: connection • ex: all node-link diagrams • emphasizes topology, path tracing • networks and trees Node-Link Containment – 2D case: containment • ex: all treemap variants • emphasizes attribute values at leaves (size coding) • only trees Node–Link Diagram Treemap Elastic Hierarchy

[Elastic Hierarchies: Combining Treemaps and Node-Link Diagrams. Dong, McGuffin, and Chignell. Proc. InfoVis 2005, p. 57-64.] 43 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? [Quantifying the Space-Efficiency of 2D Graphical Representations of Trees. McGuffin and Robert. Information • avoid wasting space Visualization 9:2 (2010), 115–140.] 44 i i

i i

166 7. Making Views

Idiom: GrouseFlocks • data: compound graphs – network – cluster hierarchy atop it • derived or interactively chosen Graph Hierarchy 1 Graph Hierarchy 2 Graph Hierarchy 3 • visual encoding – connection marks for network links

– containment marks for hierarchy (a) Original Graph – point marks for nodes • dynamic interaction

– select individual metanodes in hierarchy to expand/ [GrouseFlocks: Steerable Exploration(b) Graph of Hierarchies contract Graph Hierarchy Space. Archambault, Figure 7.25: GrouseFlocksMunzner, uses and Auber containment. IEEE TVCG to 14(4): show graph hierarchy struc- ture. (a) Original graph.900-913, (b) 2008.] Several alternative hierarchies built from the same graph. The hierarchy alone is shown in the top row. The bottom row combines the graph encoded with connection with a45 visual representation of the hierarchy using containment. From [Archambault et al. 08], Figure 3.

i i

i i Further reading • Visualization Analysis and Design. Munzner. AK Peters / CRC Press, Oct 2014. – Chap 9: Arrange Networks and Trees • Visual Analysis of Large Graphs: State-of-the-Art and Future Research Challenges. von Landesberger et al. Computer Graphics Forum 30:6 (2011), 1719–1749. • Simple Algorithms for Network Visualization: A Tutorial. McGuffin. Tsinghua Science and Technology (Special Issue on Visualization and Computer Graphics) 17:4 (2012), 383– 398. • Drawing on Physical Analogies. Brandes. In Drawing Graphs: Methods and Models, LNCS Tutorial, 2025, edited by M. Kaufmann and D. Wagner, LNCS Tutorial, 2025, pp. 71– 86. Springer-Verlag, 2001. • Treevis.net: A Tree Visualization Reference. Schulz. IEEE Computer Graphics and Applications 31:6 (2011), 11–15. http://www.treevis.net • Perceptual Guidelines for Creating Rectangular Treemaps. Kong, Heer, and Agrawala. IEEE Trans. Visualization and Computer Graphics (Proc. InfoVis) 16:6 (2010), 990–998. 46 Outline • Visualization Analysis Framework • Idiom Design Choices Session 1 9:30-10:45am Session 2 11:00am-12:15pm – Introduction: Definitions – Arrange Tables – Analysis: What, Why, How – Arrange Spatial Data – Marks and Channels – Arrange Networks and Trees – Map Color • Idiom Design Choices, Part 2 • Guidelines and Examples Session 3 1:15pm-2:45pm Session 4 3-4:30pm – Manipulate: Change, Select, Navigate – Rules of Thumb – Facet: Juxtapose, Partition, Superimpose – Validation – Reduce: Filter, Aggregate, Embed – BioVis Analysis Example

http://www.cs.ubc.ca/~tmm/talks.html#minicourse14 47 Color: Luminance, saturation, hue

• 3 channels Luminance values – what/where for categorical • hue Saturation

– how-much for ordered Hue • luminance • saturation • other common color spaces Corners of the RGB – RGB: poor choice for visual encoding color cube – HSL: better, but beware L from HLS All the same • lightness ≠ luminance • transparency Luminance values – useful for creating visual layers

• but cannot combine with luminance or saturation 48 Colormaps Categorical Binary Categorical Categorical

Categorical Ordered Sequential Diverging

Bivariate Diverging Sequential

• categorical limits: noncontiguous – 6-12 bins hue/color • far fewer if colorblind – 3-4 bins luminance, saturation after [Color Use Guidelines for Mapping and Visualization. Brewer, 1994. – size heavily affects salience http://www.personal.psu.edu/faculty/c/a/cab38/ColorSch/Schemes.html] • use high saturation for small regions, low saturation for large 49 Categorical color: Discriminability constraints • noncontiguous small regions of color: only 6-12 bins

[Cinteny: flexible analysis and visualization of synteny and genome rearrangements in multiple organisms. Sinha and Meller. BMC Bioinformatics, 8:82, 2007.] 50 Ordered color: Rainbow is poor default • problems – perceptually unordered – perceptually nonlinear • benefits – fine-grained structure visible

and nameable [Why Should Engineers Be Worried About Color? Treinish and Rogowitz 1998. http://www.research.ibm.com/people/l/lloydt/color/color.HTM] • alternatives – fewer hues for large-scale structure – multiple hues with monotonically increasing luminance for fine-grained [A Rule-based Tool for Assisting Colormap Selection. Bergman,. Rogowitz, and. Treinish. Proc. IEEE Visualization (Vis), pp. 118–125, 1995.] – segmented rainbows good for categorical, ok for binned 51 [Transfer Functions in Direct Volume Rendering: Design, Interface, Interaction. Kindlmann. SIGGRAPH 2002 Course Notes] Map other channels Size, Angle, Curvature, ... • size Length – length accurate, 2D area ok, 3D volume poor Angle • angle – nonlinear accuracy Area • horizontal, vertical, exact diagonal Curvature

• shape Volume – complex combination of lower-level primitives – many bins Shape • motion – highly separable against static Motion • binary: great for highlighting Motion Direction, Rate, – use with care to avoid irritation Frequency, ... 52 Angle

Sequential ordered Diverging ordered Cyclic ordered line mark or arrow glyph arrow glyph arrow glyph

53 Further reading • Visualization Analysis and Design. Munzner. AK Peters / CRC Press, Oct 2014. – Chap 10: Map Color and Other Channels • ColorBrewer, Brewer. –http://www.colorbrewer2.org • Color In Information Display. Stone. IEEE Vis Course Notes, 2006. –http://www.stonesc.com/Vis06 • A Field Guide to Digital Color. Stone. AK Peters, 2003. • Rainbow Color Map (Still) Considered Harmful. Borland and Taylor. IEEE Computer Graphics and Applications 27:2 (2007), 14–17. • Visual Thinking for Design. Ware. Morgan Kaufmann, 2008. • Information Visualization: Perception for Design, 3rd edition. Ware. Morgan Kaufmann /Academic Press, 2004. 54 Outline • Visualization Analysis Framework • Idiom Design Choices Session 1 9:30-10:45am Session 2 11:00am-12:15pm – Introduction: Definitions – Arrange Tables – Analysis: What, Why, How – Arrange Spatial Data – Marks and Channels – Arrange Networks and Trees – Map Color • Idiom Design Choices, Part 2 • Guidelines and Examples Session 3 1:15pm-2:45pm Session 4 3-4:30pm – Manipulate: Change, Select, Navigate – Rules of Thumb – Facet: Juxtapose, Partition, Superimpose – Validation – Reduce: Filter, Aggregate, Embed – BioVis Analysis Example

http://www.cs.ubc.ca/~tmm/talks.html#minicourse14 55