Visualizing Data

By Richard Brath and Ray Duncan

Richard is head of the visualization consulting group at Visible Decision and can be contacted at rbrath@vdi.com. Ray, a contributing editor for DDJ, is webmaster of the Electronic Review of Computer Books (http://www.ercb.com/).

The Visualization Toolkit:
An Object-Oriented Approach
to 3D Graphics
Will Schroeder, Ken Martin, Bill Lorensen
Prentice Hall PTR, 1996
826 pp., $59.95
ISBN 0-13-199837-4

Visual Explanations
Eward R. Tufte
Graphics Press, 1997
156 pp., $45.00
ISBN 0-9613921-2-6

Three-dimensional visualization is a powerful way to deliver a vast amount of information to users haplessly mired in rows and columns of data -- in many cases, the only practical way. The Visualization Toolkit, by Will Schroeder, Ken Martin, and Bill Lorensen, introduces the techniques for creating interfaces that can handle enormous volumes of data by showing you how to build and use a 3-D visualization toolkit. (Schroeder and Lorensen's article "3-D Surface Contours" appeared in DDJ, July 1996.)

The toolkit, called VTK, is a C++ class library for scientific visualization that runs under both UNIX and Windows. VTK can also be accessed from Tcl. This lets you modify code on the fly, so that you can familiarize yourself with the class library without the slow compile-link-execute cycles of C++.

Upon purchasing the book, I immediately installed the software from the CD-ROM that comes with the book, and began to click on each and every icon. I installed the software on a Windows 95 Pentium laptop, a Windows NT Pentium Pro desktop machine, and a Silicon Graphics Indy workstation. The installation process under Windows is simple, and the demos ran without any tweaking. While only source code is provided for UNIX environments, the make process was straightforward. I was pleasantly surprised that the software ran with reasonable performance on the laptop.

The demos provide a good overview of what VTK can do. They ranged from impressive visualizations of computational fluid dynamics (colorful streamlines in turbulent flows) and medical imaging (volumetric surfaces and colored slices recreated from CT scan data) to simpler examples that illustrated some of the basic concepts of visualization.

Having played with the examples, I started reading the book. Its first half begins with an overview of background concepts, such as object-oriented design and 3-D computer graphics, and then proceeds to explain concepts such as dataflow programming, the differences between interpreted and compiled languages, and so on. Thus, the book is accessible to those without a background in 3-D computer graphics or object-oriented programming.

The bulk of the first half (approximately 200 pages) is made up of a collection of algorithms, data representations, and computer graphic techniques for 3-D scientific visualization. Techniques such as contouring, volume rendering, streamlining, and decimation are discussed in depth. Since the source code is available, you can relate the general discussion in the book to actual implementations. This portion would make a good complement or follow up to academic courses in 3-D computer graphics. Exercises are included, but most seem too simple.

The second half of The Visualization Toolkit is a reference manual for the VTK class library. When some of the naïve modifications I made to the demos had unintended results (that is, they crashed), I was able to find the information I needed quickly.

Finally, I checked the book's web site (http://www.cs.rpi.edu/~martink/) to see what was new. The web site includes a FAQ and new releases of the software. I was pleasantly surprised by the number of new classes, and by the addition of a whole new group of classes for image processing.

As good as The Visualization Toolkit is, it does have some weaknesses. The authors try to cover a lot in this book, which makes some sections thin. Other texts or background should supplement this book for an understanding of object-oriented programming, C++, Tcl, and 3-D computer graphics. While the toolkit has over 200 classes biased toward techniques for scientific visualization, it does not address issues such as interface, data acquisition, direct manipulation, annotation, scene composition, or visualization design in detail. Personally, I would have preferred some discussion of these topics to yet another object-orientation primer. While manipulation, annotation, and other topics may be "fuzzier" than algorithmic techniques, they are at least as important to the creation of effective interfaces.

These complaints aside, The Visualization Toolkit is useful and well written. It emphasizes the practical. It gives readers the chance to experiment with real tools, and it is a valuable reference for anyone interested in experimenting with cool visualization tools.

-- Richard Brath

Visual Explanations

All technical writers, at one time or another, have had explanations of some complex topic mangled into unrecognizability by a well-meaning but technically clueless editor, or found work embellished with a callout or cover blurb that bore no sensible relation to (or even directly contradicted!) the content. On such occasions, we mutter dark threats and entertain pleasant fantasies of an alternate universe where we could personally shepherd our brilliant prose all the way from manuscript to newsstand or bookstore. Realistically, of course, hardly any of us have the design, editing, publishing, and marketing talents to pull off such a stunt at all, let alone end up with a product that could bear comparison to the mainstream.

On the other hand, there's Edward R. Tufte and his increasingly famous series of books about the graphical representation of data. Tufte, an artist, scholar, and entrepreneur of the first rank, assumes responsibility for his books at every level from beginning to end, even the direct-mail advertising campaigns. I wouldn't be too surprised to find out he personally hand-picks and chops down the trees that are used to make the paper. The books are elegantly written and crisply executed on highest quality stock with gorgeous 4-color figures throughout, some quite elaborate (foldouts, overlays, popups, and so on). And, perhaps due to the elimination of much of the traditional overhead of publishing and distribution, they are delivered to us at a remarkably low price.

About his three books on information design, which have appeared over a 13-year period, Tufte says:

The Visual Display of Quantitative Information is about pictures of numbers, how to depict data and enforce statistical honesty.

Envisioning Information is about pictures of nouns (maps and aerial photographs, for example, consist of a great many nouns lying on the ground). Envisioning also deals with visual strategies for design: color, layering, and interaction effects.

Visual Explanations is about pictures of verbs, the representation of mechanism and motion, of process and dynamics, of causes and effects, of explanation and narrative. Since such displays are often used to reach conclusions and make decisions, there is a special concern with the integrity of the content and the design.

From a reader's perspective, the topical distinctions between the books are not so clear-cut. Visual Display was startling in its originality, eclecticism, and cost-is-no-object presentation. It stood in the same relation to its predecessors as did Star Wars to earlier science-fiction movies. Envisioning Information, while visually handsome, seemed relatively shallow. Visual Explanations is clearly the best of the three books so far. Tufte continues to evolve his own unique style, which tightly integrates a direct but spare narrative with stunning illustrations drawn from hundreds of years of manuscripts. The graphics are so closely interwoven with the text, in fact, that they sometimes substitute for traditional chapter subheads, signaling a change of topic and providing a context for the following discussion.

Every part of Visual Explanations is engrossing. The heart of the book, a chapter entitled "Visual and Statistical Thinking," is based on analyses of the London cholera epidemic of 1854 and the Challenger disaster of 1986. The latter includes reproductions of defective graphs and charts used before the launch (by the Thiokol managers and engineers) and after (by the investigators). You can't help but be shocked by the carelessness with which the lives of the astronauts were thrown away by the NASA bureaucracy, and by how effectively the true roots of the disaster were subsequently swept under the carpet, as illustrated in the following quote:

The scatterplot [in Figure 1] shows the experience of all 24 launches prior to the Challenger [on January 28, 1986]. Like the table, the graph reveals the serious risks of a launch at 29°. Over the years, the O-rings had persistent problems at cooler temperatures: indeed, every launch below 66° resulted in damaged O-rings; on warmer days, only a few flights had erosion. In this graph, the temperature scale extends down to 29°, visually expressing the stupendous extrapolation beyond all previous experience that must be made in order to launch at 29°. The coolest flight without any O-ring damage was at 66°, some 37° warmer than predicted for the Challenger, the forecast of 29° is 5.7 standard deviations distant from the average temperature for previous launches. This launch was completely outside the engineering database accumulated in 24 previous flights.

The detection of visual misinformation, whether intentional (as in cigarette package and billboard health warnings) or unintentional, is an important underlying theme throughout the book. A lengthy chapter on "Explaining Magic" demonstrates how tricks deceive the eye of the layman, how they are passed down from one generation of magicians to the next by means of closely guarded texts and diagrams, and, by counter-example, how data can be presented without misdirection. Additional chapters on "Smallest Effective Difference," "Parallelism," "Multiples in Space and Time," and "Visual Confections" draw from sources as diverse as Jean de Brunhoff and Galileo to convey their lessons. At the end, you close this book with a sigh of satisfaction and deep admiration.

-- Ray Duncan

DDJ


Copyright © 1997, Dr. Dobb's Journal