In this section are discussed the components of visualization which are general to both printed and computer presentation applications and then those components which are more specific to the understanding or insight process. Many of the general principles of graphics design, as taught in Art departments, carry over into this area. For statistical graphics, [TUFT83] gives some of these general principles. The essential idea is to provide as much information as possible without confusing or distracting the viewer with clutter and inappropriate color schemes.

For the more general process of information visualization, [TUFT90] provides general principles. While his orientation is primarily printed graphics the principles are valid for computer generated images.

The first principle addresses the problem of projecting 3D (or higher) data onto a 2D surface ("Escaping Flatland"). The second principle ("Micro/Macro Readings") shows how the addition of appropriate detail can enhance understanding and that simpler is not always better. The third section ("Layering and Separation") discusses how the use of color or gray scale, and line density can be used to enhance information. The next section of [TUFT90] ("Small Multiples") discusses how the use of a series of changing images, all of which are visible to the user simultaneously, can be used. His final sections discuss the more general use of color plus how to display time varying information.

The tutorial presented at Eurographics '91 by Hearn and Baker [HEAR91], gives an excellent overview of the more advanced components of visualization, especially scientific visualization. These are also discussed, from a slightly different perspective, in the overview article by Nielson, in the special issue of IEEE Computer [NIEL91]. Another view of the principles and educational requirements of visualization is given in [CABR90]. The discussion below is a combination of these.

Nielson describes the essential method of scientific discovery as being an iterative loop between a model (abstract description of the phenomena) and observation of the phenomena. Each of these two components is divided again. The model process becomes the development of a mathematical model followed by a numerical solution of the model. The observe process becomes a graph evaluation phase (choosing the proper output from the numerical solutions phase, for example computing the values of f(x) to plot f(x) versus x) followed by a transform and render phase which performs the actual graphical output. In instances where the data is empirical the observe phase may include a comparison of the experimental data with the data produced by the mathematical model.

This process may occur in several different types of modes [HEAR91]. The "movie mode" consists of acquiring the data, producing an animation tape of the data and then analyzing the data. The "tracking" mode consists of acquiring the data and visualizing it and observing it directly on the computer. Neither of these two modes includes any user interaction. The third mode, "interactive post-processing", introduces user interaction in that the user is able to interactively control the visualization parameters. The final mode, "interactive steering", allows the user to interactively control both the actual computation of the data, e.g., by changing parameters as the computation progresses, and the visualization of the data. These four modes provide increasing support for analysis but also require increasing technology support.

[HEAR91] discusses the different types of data that must be manipulated during this process. There may be nominal data types, e.g., biological classifications, or more commonly, quantitative data types such as scalar, vector, tensor, and multivalued types. Examples of scalar types would be temperature or wavelength. Examples of vector data would be velocity, force, or surface normal. Both scalar and vector quantities are examples of tensors with scalars being zeroth order tensors and vectors being first order tensors. Examples of second order tensors (matrices) are stress, strain, or conductivity. Multivalued data may have any number of dimensions and methods must be found to represent these.

Another consideration is the proper coordinate system to use, as this choice can turn a difficult problem into an easy one and vice-versa. Possible coordinate systems include cartesian, curvilinear (where none of the basis axesare straight), polar, cylindrical, and spherical. The researcher may have toconvert data from one coordinate system to another for the best data display.

We must also consider the connectivity of the data. Some data may be gridfree (scattered) while other data may be gridded, either in 2D or 3D. This occurs when space is divided into these grids and an average value is computed or measured for each grid area or volume. There may be different types of grids such as simple cartesian grids, structured grids, irregular grids, and others.

There are several ways to construct complex mathematical models. We may use linear equations, nonlinear equations, ordinary differential equations, partial differential equations, integral equations and integral-differential equations.

The graph evaluation phase, i.e., deciding just how to graph the data and how to perform the necessary computations to render the graph is sometimes considered to be the central problem in visualization [NIEL91]. Hearn calls this the representation phase. There are many possible methods to represent the data and many issues to consider such as effectiveness, interactivity, efficiency, composition, color. shape, and expressiveness. Some of these have been addressed in the first paragraphs of this section.

As previously discussed, the representation of the data draws from many disciplines such as computer graphics, image processing, art, graphic design, human-computer interface, cognition, and perception. A particularly interesting aspect of visualization is that it is best performed by teams, sometimes called "Renaissance Teams" [COX90], which might consist of scientists, computer scientists, and artists.

We can use line charts for 1D scalar data, and scatter plots, images, or 2D contours for 2D data. For 3D, height fields or 2D contours over planar slices can be used. We can also use isosurfaces in 3D. Volume rendering allows us to display information throughout a 3D data set. The basic idea in volume rendering is to cast rays from screen pixel positions through the data, obtain the desired information along the ray, and then display this information. The data can be an average of the data in a cell ("voxel"), or of all cells intersected by the ray, or some other such measure. This is used in areas such as medical imaging and displaying seismic data.

Vector data can be displayed using arrow plots ("hedgehog display"), or flowribbons which show particle trajectory and rotation. In an animation, we can also use particles that move along a computed path.

Multivariate data can use the three spatial dimensions plus other methods. One is attribute mapping where some variable is mapped to some geometry or geometry attribute. An example of this might be mapping temperature, or some other variable, to color. Special symbols such as glyphs or data jacks [COX90] have also been developed.

Last modified on February 11, 1999, G. Scott Owen, owen@siggraph.org