University logo

Envisioning Information

Lectures

Overview
Practicals Resources Conference

This page will include summaries of the lectures and case studies, and links to the slides.

Lectures


Lecture 1 - Introduction
This lecture froms an introduction to the module.  It begins with a definition of visualization from Card, McKinlay and Scneidermann as 'the use of computer-supported, interactive, visual representations of data to amplify cognition', and identifies the two brances of Scientific and Information Visualization.  It looks at a range of applications from meteorology, to biology, to astronomy, to information networks - all of which make significant use of visualization. 

Visualization is not a new subject - it pre-dates computing. So we look at early examples of visual representations from the 10th century onwards, and then focus on four eras in visualization system development since 1960 - subprogram libraries; interactive packages; modular visualization environments; and visualization services. 

Lecture 2 - Simple graphs and charts
This lecture looks at some simple data presentation techniques in the overall context of 'exploratory data analysis'.  It establishes some important terminology to categorise datatypes, and looks at graphs, bar charts, pie charts, histograms and several other basic chart types.  For further study, students are asked to think about the relative merits of bar charts and pie charts, and when each should be used.

Lecture 3 - Multivariate data exploration (part 1- scatter plots and parallel coordinates)
This lecture looks at the visualization of data tables, in which the columns are variables and the rows are measurements or observations.  We look at two particular techniques: the scatter plot matrix, where a grid of 2D scatter plots is displayed, so that all pairwise combinations are shown; and parallel coordiantes, where each variable is assigned to an axis laid out as a set of parallel lines, and an observation is the polyline connecting the points on each axis corresponding to the values of the variables. The concept of brushing is introduced as a selection of observations that lie within prescribed bounds on the variables.   For practical work, we introduce 'xmdvtool', a freely available and very useful tool for multivariate data visualization.

Lecture 4 - Multivariate data exploration (part 2 - glyphs and hierarchical approaches)
This lecture looks at the idea of representing a measurement as a glyph, whose shape reflects the values of the set of variables.  In particular we look at star plots, Chernoff faces, stick figures, shape coding.   In the latter part of the lecture we reflect on the fact that with large data sets the picture becomes very cluttered - this is true for any technique really.  Thus we look at ways of reducing the amount that is displayed, either by clustering observations, or identifying only the key variables to display.

Lecture 5 - Connections
This lecture looks at the situation where data elements are known to be connected in some form of graph structure - and we wish to visualize these connections.  This is sometimes called network visualization.  We look at the drawing of large graphs, starting from the pioneering work of Fruchterman and Reingold in developing a force-directed placement algorithm.  We then look at the drawing of trees, starting again from the pioneering algorithm of Reingold and Tilford.  The idea of treemaps is then discussed, with reference to Shneiderman's work and the novel cushio treemaps of van Wijk. Finally the concept of hyperbolic trees is explained.

Lecture 6 - Document Visualization
This lecture looks at approaches to visualize collections of documents and relationships amongst them.  One of the earliest examples is Tilebars which shows documents as a bar, with keyword occurrence in sections of the document depicted as coloured tiles. In general the approach is in three steps: analyse to get key words and their occurrence in documents, creating a feature vector for each document; use an algorithm to represent these feature vectors in a form that is amenable to visualization, for example using a clustering technique; and finally visualize.  We illustrated this using the idea of Self-Organising Maps, or Kohonen maps.  A case study form NIST showing how to visualize keyword strengths in documents is described, and finally the Kartoo visual search engine is mentioned.

Lecture 7 - Interaction
This lecture looks at the aded value we gain from interaction, in being able to get the picture we want, not what someone else has created for us.  In particular we look at focus and context, and brushing.  The idea of focus and context is to be able to maximize the use of screen space by enlarging the area of most interest, the gfocus, while simultaneously retaining the context by shrinking the surrounding region.  Variants are discussed, including distortion techniques such as bifocal display and fisheye views.

Lecture 8 - Good design - what we can learn from Tufte
Edward Tufte's books are a source of inspiration and common sense, and we can learn a lot from him about designing good visualizations, and avoiding bad practice.  This lecture looks at the principles of: maximizing data-ink ratio; maximizing data density; minimizing the lie factor; and focussing on data variation rather than design variation.

Lecture 9 - Time: Taxonomy and Techniques
Many applications involve data that evolves over time and so a variety of special techniques have been developed to cater for this class of data.  We begin with a classification of different types of time and go on to look at different metaphors which have been proposed.  The Themeriver technique displays data as a 'river' with the time axis aligned with the flow.  The river metaphor has also been used by the 'taglines' idea, which is used to visualize tags attached to images in Flickr.  van Wijk has used a calendar metaphor very effectively, and Schumann and colleagues have explored radial representations, such as timewheels.

Lecture 10 - Cartograms: A different way of drawing maps
This lecture looks at novel space representations.  The idea of a cartogram is to replace the conventional notion in maps where area on the amp represents area on the ground.  In a c artogram, this area is distorted into an area which represents the size of some property of the region other than its area - for example, its population density. Different types of cartogram are described, including contiguous and non-contiguous representations, and Dorling cartograms.

Lecture 11 - Scientific Visualization: Introduction & Scalar 1D Data
This lecture aims to introduce the basic idea of scientific visualization as a pipeline of processes, turning data into pictures. The first step is to select the data  of interest. A key next step is to create a model of the entity underlying the data - this step is interpolation, where (in 1D) a curve is fitted through the given data points. We saw how this has to be done with care and may involve incorporating knowledge from the scientist.  The third step is mapping the model onto some abstract geometric representation, using some metaphor for visualizing the data.  The final step is to render the geometry as an image or sequence of images.  This pipeline model underpins many visualization systems, including IRIS Explorer.

The second part of the lecture looked in detail at the 1D case, and in particular at interpolation using nearest neighbour and piecewise linear and cubic polynomials.

Lecture 12 - Scientific Visualization: Scalar 2D Data
This lecture covers the visualization of 2D data. It begins by looking at bilinear interpolation over rectangular grids. It then discusses contouring over such grids, noting the ambiguity problems in simply joining intersections of contour with grid lines and the need to consider teh behaviour of the bilinear interpolant within each cell.  We then look at scattered data and show how Delaunay triangulation allows us to form a net of triangles over the data. Contouring is then easy, as we can fit a linear function over each triangle (the contours of a linear function being straight lines).  Finally we mention other representations of 2D data, such as surface views and image views.

Lecture 13 - Scientific Visualization : Scalar 3D Data - Isosurfacing
This lecture describes the visualization of 3D scalar data using isosurfacing. This is the analogue of contouring in 2D - a surface of a specified threshold value is extracted from the 3D volume.  The key technique is Marching Cubes. This examines all possible isosurface representations for a single cube, depending on the values at the 8 vertices.  The dataset is then visualized as a collection of surfaces extracted from each cube in turn.

Lecture 14 - Scientific Visualization : Scalar 3D data - Volume Rendering
This lecture looks at an alternative technique for 3D scalar data, namely volume rendering.  This models the data as a semi-transparent gel - the colour and opacity at any point being determined by a user-defined transfer function that relates data values to colour and opacity.  Three techniques are described: ray casting; texture-based volume rendering; and splatting.

Lecture 15 - Scientific Visualization : Vector Data - Flow Visualization
This lecture covers the problem of visualizing flow, a common requirement in computational fluid dynamics.  We discuss a range of techniques, many modelled on traditional experimental techniques.  We look at arrows; particle traces and similar advection based methods; and line integral convolution.

Lecture 16 - Distributed and Collaborative Visualization
This lecture describes research work here at Leeds in evolving dataflow visualization systems such as IRIS Explorer, to distributed and collaborative environments.  We show how modules in a pipeline can be arranged to execute on a remote computer, rather than the desktop.  This is especially useful for computational steering applications where the simulation can execute remotely, perhaps over a computational grid.  We then discuss collaborative visualization - using a screen sharing technology such as VNC, or using linked dataflows as in the COVISA extension of IRIS Explorer.



Case Studies


Case Study 1 - Napoleon's March to Moscow
This case study looks at the classical visualization by Minard, and principles of good design in visualization that can be abstracted from this work (inspired by Tufte).

Case Study 2 - Scatter plots on hand held devices

Case  Study 3 - Data exploration with parallel coordinates

Case Study 4 - Focus and context for volume visualization

E-mail: kwb
@
comp.leeds.ac.uk


Ken Brodlie
  December 2006