1 / 49

A Quick Overview of Some Visualization Techniques and Suggestions for Projects

A Quick Overview of Some Visualization Techniques and Suggestions for Projects. Prof. Michael McGuffin ETS, Montreal, Canada http://profs.logti.etsmtl.ca/mmcguffin/.

sibyl
Download Presentation

A Quick Overview of Some Visualization Techniques and Suggestions for Projects

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Quick Overview of Some Visualization Techniques and Suggestions for Projects Prof. Michael McGuffin ETS, Montreal, Canada http://profs.logti.etsmtl.ca/mmcguffin/

  2. There are two main kinds of data we can visualize: multidimensional data (which includes tables, mathematical relations, and functions),and network data(which includes trees).

  3. Multidimensional Data:Scatterplot Matrices

  4. Multidimensional Data Consider students’ marks in … Physics: 90% Math: 95% French Literature: 65% History: 70% Each student can be thought of as a tuple (90%, 95%, 65%, 70%) Etc.

  5. Scatterplot Matrix (SPLOM) Math (90%, 95%, 65%, 70%) FrenchLiterature History FrenchLiterature Physics Math

  6. Scatterplot Matrix (SPLOM) Math (90%, 95%, 65%, 70%) (30%, 20%, 90%, 90%) FrenchLiterature History FrenchLiterature Physics Math

  7. Scatterplot Matrix (SPLOM) Within each scatterplot, we could be interested in seeing outliers, correlations, etc. Notice: the upper triangular half is the same as the lower triangular half, and the diagonal is not very interesting. Niklas Elmqvist, Pierre Dragicevic, Jean-Daniel Fekete (2008). “Rolling the Dice: Multidimensional Visual Exploration using Scatterplot Matrix Navigation”. Proceedings of InfoVis 2008.

  8. Scatterplot Matrix (SPLOM) Notice: the diagonal is used to show the names of dimensions. Wilkinson, Anand, Grossman,“Graph-Theoretic Scagnostics”, 2005

  9. Example from Matlab: “carbig.mat” SPLOM with histograms along the diagonal. Colors indicate the number of cylinders in the engine of each automobile. http://www.mathworks.com/products/statistics/demos.html?file=/products/demos/shipping/stats/mvplotdemo.html

  10. Matrix of correlation coefficientsWhen we have many dimensions, we can summarize each scatterplot by computing its correlation coefficient and displaying only that, instead of displaying all the individual data points. The below interface also allows the user to select one scatterplot and see a zoomed-in view for details. Jinwook Seo and Ben Shneiderman, “A Rank-by-Feature Framework for …”, Proceedings of InfoVis 2004.

  11. Corrgrams (Michael Friendly, 2002) http://www.math.yorku.ca/SCS/Gallery/images/corrgram2t.gif

  12. Multidimensional Data:Parallel Coordinates(Alfred Inselberg and others)

  13. Multidimensional Data Consider students’ marks in … Physics: 90% Math: 95% French Literature: 65% History: 70% Each student can be thought of as a tuple (90%, 95%, 65%, 70%) Etc.

  14. Parallel Coordinates FrenchLiterature Physics Math History 100% (90%, 95%, 65%, 70%) 0%

  15. Parallel Coordinates FrenchLiterature Physics Math History 100% (30%, 20%, 90%, 90%) (90%, 95%, 65%, 70%) 0%

  16. Parallel Coordinates Johansson et al. 2005

  17. Parallel Coordinates Ellis, Bertini, Dix, “The Sampling Lens …”, 2005 Ellis, Dix, “Enabling Automatic Clutter Reduction …”, 2006

  18. Multidimensional Data:Scatterplot and Parallel CoordinateCombinations

  19. Example from Matlab: “carbig.mat” http://www.mathworks.com/products/statistics/demos.html?file=/products/demos/shipping/stats/mvplotdemo.html

  20. [Lopez, McGuffin, & Barford; not yet published]

  21. Combinations of Parallel Coordinates and Scatterplots Steed et al. 2009 Holten and van Wijk 2010 Yuan et al. 2009

  22. Multidimensional Data:Glyphs

  23. Examples of relations. A relationis a subset of a cartesian product of two or more sets. Each relation can be thought of as a multidimensional data set. In the examples here, each row is a tuple, each column is a dimension. The fonction y = x^0.5: x y --- --- 0 0 1 1 4 2 9 3 ... The relation in a table of a relational database: Client_name Product_purchased Price Date ... ------------- ----------------- ------- ------------ ----- Robert G. Trombone 500.00 2008 mars 7 . Robert G. Partitions vol. 1 45.00 2008 mars 7 . Lucie M. Flute 180.00 2007 nov 11 . Cynthia S. Partitions vol. 2 40.00 2008 juin 16 Jules T. Piano 6000.00 2008 jan 10 Jules T. Partitions vol. 1 45.00 2008 jan 13 ... A video (for example, an .avi file): x y time red green blue --- --- ------- ------- ------ ------ 0 0 0 255 0 0 0 1 0 200 10 6 ... 0 0 0.1 255 50 100 0 1 0.1 255 200 190 ...

  24. Chernoff faces (1973)(an example of a "glyph") http://mapmaker.rutgers.edu/355/Chernoff_face.gif http://kspark.kaist.ac.kr/Human%20Engineering.files/Chernoff/life_in_LA.jpg Advantage: better than text to get a global impression of the data and to find interesting elements. Disadvantage: the mapping from variables to faces has an effect on the saliency of each variable. Disadvantage(?): redundancy of a symmetrical face.

  25. Other examples of glyphs M. Ward (2002), “A Taxonomy of Glyph Placement Strategies for Multidimensional Data Visualization”, Information Visualization.

  26. Interactive Presentation from theU.N.(United Nations Development Programme, Human Development Report) Notice: the points are glyphs! See also Hans Rosling’s presentation on http://www.ted.com

  27. Multidimensional Data:Other techniques …

  28. Examples of relations. A relationis a subset of a cartesian product of two or more sets. Each relation can be thought of as a multidimensional data set. In the examples here, each row is a tuple, each column is a dimension. The fonction y = x^0.5: x y --- --- 0 0 1 1 4 2 9 3 ... The relation in a table of a relational database: Client_name Product_purchased Price Date ... ------------- ----------------- ------- ------------ ----- Robert G. Trombone 500.00 2008 mars 7 . Robert G. Partitions vol. 1 45.00 2008 mars 7 . Lucie M. Flute 180.00 2007 nov 11 . Cynthia S. Partitions vol. 2 40.00 2008 juin 16 Jules T. Piano 6000.00 2008 jan 10 Jules T. Partitions vol. 1 45.00 2008 jan 13 ... A video (for example, an .avi file): x y time red green blue --- --- ------- ------- ------ ------ 0 0 0 255 0 0 0 1 0 200 10 6 ... 0 0 0.1 255 50 100 0 1 0.1 255 200 190 ...

  29. A video Blue Red Green

  30. Network Data:Node-Link DiagramsNote: in the context of this discussion, the word “graph” means the same thing as “network”, i.e., a “graph” is a topological structure with nodes and edges that can be drawn many different ways. In more general English conversation, however, the word “graph” may simply mean a picture showing a mathematical function or something similar. To avoid confusion, it is often good to use the word “network” to refer to the topological structure.

  31. Generated by Graphviz( http://www.graphviz.org/Gallery/directed/unix.html ) Generated with a “SugiyamaLayout”( http://www.ogdf.net/ogdf.php/tech:howto:hierlr )

  32. How to compute the layout of a graph? • Many algorithms are available • See “Graph Drawing” annual conference proceedings • See book “Graph Drawing: Algorithms for the Visualization of Graphs” by Di Battista et al. (1999) • Examples: Reingold-Tilford (1981) for binary trees, Sugiyama et al. (1981) for directed acyclic graphs (DAGs), or examples on previous slide • Most of these algorithms are not easy to implement • One class of algorithms that are easy to implement (in their naïve form) and that are applicable to any graph: force-directed layout

  33. Force-Directed Layout of a Network in 3D • Pseudo-physical simulation of masses and springs that converges toward a final layout • The nodes are masses that are mutually repelled by an electric force • The edges are springs http://profs.logti.etsmtl.ca/mmcguffin/research/graph3D/

  34. Tree DataA tree can be thought of as simply a special kind of network.

  35. Indented Outline List Classical/Layered A naïve and easy-to-program layout: each subtree has an interval in x that is not overlapped by the neighboring subtrees. A postorder depth-first-traversal combines the intervals of subtrees to yield the interval of a parent node. Another easy-to-program layout: a preorder depth-first-traversal encounters nodes in order of their y coordinates, and the x coordinate of each node is proportional to its depth. A "Reingold Tilford" style layout : saves space in x by moving subtrees together as much as possible. (For details, see section 3 of Christoph Buchheim, Michael Jünger and Sebastian Leipert, "Improving Walker's Algorithm to Run in Linear Time", Proceedings of Symposium on Graph Drawing (GD) 2002, pages 344-353.) The is more complicated to program.

  36. Indented Outline List Classical/Layered A naïve and easy-to-program layout: each subtree has an interval in x that is not overlapped by the neighboring subtrees. A postorder depth-first-traversal combines the intervals of subtrees to yield the interval of a parent node. Another easy-to-program layout: a preorder depth-first-traversal encounters nodes in order of their y coordinates, and the x coordinate of each node is proportional to its depth. A "Reingold Tilford" style layout : saves space in x by moving subtrees together as much as possible. (For details, see section 3 of Christoph Buchheim, Michael Jünger and Sebastian Leipert, "Improving Walker's Algorithm to Run in Linear Time", Proceedings of Symposium on Graph Drawing (GD) 2002, pages 344-353.) The is more complicated to program.

  37. Indented Outline List Classical/Layered A naïve and easy-to-program layout: each subtree has an interval in x that is not overlapped by the neighboring subtrees. A postorder depth-first-traversal combines the intervals of subtrees to yield the interval of a parent node. Another easy-to-program layout: a preorder depth-first-traversal encounters nodes in order of their y coordinates, and the x coordinate of each node is proportional to its depth. A "Reingold Tilford" style layout : saves space in x by moving subtrees together as much as possible. (For details, see section 3 of Christoph Buchheim, Michael Jünger and Sebastian Leipert, "Improving Walker's Algorithm to Run in Linear Time", Proceedings of Symposium on Graph Drawing (GD) 2002, pages 344-353.) The is more complicated to program.

  38. Trees Michael McGuffin and Jean-Marc Robert, 2010

  39. Trees

  40. Treemaps(Ben Shneiderman and others)http://www.cs.umd.edu/hcil/treemap-history/ Marc Smith and Andrew Fiore, 2001 Martin Wattenberg, 1998 and http://www.smartmoney.com/marketmap/

  41. Focus+Context Visualizations

  42. Fisheye lens Image: Keahey and Robertson

  43. 3D Visualizations

  44. 3D + interaction + animations :Christopher Collins and Sheelagh Carpendale, 2007

  45. Project Ideas on the Wiki

  46. Possible project topics: • visualization of multidimensional data (using parallel coordinates, using scatterplot matrix, using glyphs,...) Example data sets: • http://archive.ics.uci.edu/ml/datasets/Iris • http://vis.stanford.edu/protovis/ex/cars.html • http://vis.stanford.edu/protovis/ex/flowers.html • visualization of one tree (genealogy tree, evolutionary tree, files on harddrive,...) • Example: http://www.cs.umd.edu/hcil/treemap-history/ • visualization of differences between two trees • visualization of one network (using node-link diagram, using adjacency matrix,...) • visualization of differences between two networks • visualization of time series dataExample: http://leebyron.com/else/streamgraph/ • a 3D visualization • a zoomable user interface

  47. Some libraries, APIs, software, and platforms: • InfoVis Toolkit (Java) http://ivtk.sourceforge.net/ • Prefuse (Java) http://prefuse.org/ • Flare (ActionScript) http://flare.prefuse.org/ • Protovis (JavaScript) http://vis.stanford.edu/protovis/ http://eagereyes.org/tutorials/protovis-primer-part-1 • Many Eyes http://manyeyes.alphaworks.ibm.com/ • VTK (C++ / Java / Python) http://vtk.org/ • Processing (Java) http://processing.org For visualizing networks • Pajek http://pajek.imfm.si/ • Graphviz http://www.graphviz.org/ • Tulip http://www.tulip-software.org/ • Walrus http://www.caida.org/tools/visualization/walrus/ • JUNG http://jung.sourceforge.net/ • NetworkX (Python) http://networkx.lanl.gov/ For multidimensional data • XmdvTool http://davis.wpi.edu/~xmdv/ • Spotfire http://www.cs.umd.edu/hcil/spotfire/ • Polaris http://window.stanford.edu/projects/polaris/ • Tableau http://www.tableausoftware.com • Mondrian http://rosuda.org/Mondrian Some websites and blogs: • http://infosthetics.com • http://flowingdata.com • http://eagereyes.org • http://www.visualcomplexity.com/vc/blog/ • http://manyeyes.alphaworks.ibm.com/blog/ • http://www.gapminder.org/

  48. Some Books about Visualization • Jacques Bertin (1967), Sémiologie graphique: Les diagrammes, Les réseaux, Les cartes. • Jacques Bertin (1977), La graphique et le traitement graphique de l'information. • John Wilder Tukey (1977), Exploratory Data Analysis. • Edward R. Tufte (1983), The Visual Display of Quantitative Information. • Edward R. Tufte (1990), Envisioning Information. • Edward R. Tufte (1997), Visual Explanations: Images and Quantities, Evidence and Narrative. • Di Battista, Giuseppe and Peter Eades and Roberto Tamassia and Ioannis G. Tollis (1999), Graph Drawing: Algorithms for the Visualization of Graphs. • Leland Wilkinson (1999), The Grammar of Graphics. • Stuart K. Card and Jock D. Mackinlay and Ben Shneiderman (1999), Readings in Information Visualization: Using Vision to Think. • Colin Ware (2000), Information Visualization: Perception for Design. • Robert Spence (2001), Information Visualization.

  49. A bibliography of books and papers http://profs.logti.etsmtl.ca/mmcguffin/bib/vis.txt

More Related