Visualization

Visualization is useful for:

Data entry (initial conditions)

Code debugging and performance analysis

Interpretation and display of results

Our focus will be #3. The computational astrophysicist can either:

Develop new visualization software tailored to problem under study

Use an existing software package

Plotting 1-D Data

Function of one variable only: f(x) vs. x

Examples: sm, gnuplot, xgobi, IDL, etc.

Minimum requirements:

Read data from file

Perform arithmetic manipulation of data

Multiple data sets on plot

Multiple plots on page

Add text to plots

Plotting 2-D Data

Function of 2 variables, i.e. f(x,y)

If f is a scalar quantity, can:

Make image

Represent each x,y data point by one or more pixels on screen. Use integer value to represent data value at x,y point (8 bit: 0-255; 24-bit: 0-16.8 million).

Make contour plot

Contours are isosurfaces of data.

Make 3-D surface plot

Use x,y as 2 coordinates, f as 3rd coordinate, plot surface.

Plotting 2-D Data, Cont'd

If f is a vector quantity, can:

Plot vectors directly

Can be hard to see

Plot streamlines

Contours of ö where f = ö

2-D plotting packages include:

sm, gnuplot, xgobi, IDL, ximage, NCAR graphics, etc.

Plotting 3-D Data

Function of 3 variables, i.e. f(x,y,z)

If f is a scalar quantity, can:

Plot 2-D slices

e.g. Faces of cube

Plot isosurfaces

These are now 3-D surfaces. Can use wireframe or polygons. Can shade with second variable g(x,y,z).

Plot volumetric rendering

Solve transfer equation ("ray tracing") using emissivity proportional to data value.

Plotting 3-D Data, Cont'd

Standard algorithms exist for 3-D rendering, including shadowing, hidden surface removal, etc. Often implemented in hardware. Also have "dynamic/interactive" visualization: rotation, etc.

If f is a vector quantity, can:

Plot 3-D vectors on 2-D slice

Plot streamlines in 3D

3-D plotting packages include:

tipsy, xgobi, IDL, NCAR graphics, xdataslice, etc.

Animation

If any one of the coordinates of data in a plot is time, it makes sense to render images as a time sequence, e.g. make animation.

The eye is very sensitive to motion, can discover much detail using animations.

Animation formats include MPEG, FLI, QT, AVI, GIF, plus many custom formats.

Animation players include mpeg_play, xanim, quicktime, etc.

2001-02-15T09:13:37

Derek Richardson