Responsive (i.e. rapid) interaction can facilitate active exploration of problems in a manner that is inconceivable with static displays. For example users can start to pose "What if" queries spontaneously as they work through a task. Such exploration can enormously facilitate the acquisition of qualitative insight into the nature of the task at hand, as well as revealing direct quantitative results.
In this paper we describe what we call Interactive Visualisation Artifacts (IVAs). These are environments developed to enable users to solve a particular task - in this case within the field of engineering design.
The IVAs we will discuss here differ from much existing work principally because we are not attempting to visualise raw data but, rather, data which is precalculated or generated on demand from mathematical models. We also exclude data which maps comfortably onto natural representations e.g. 3D volumetric models of flow through a pipe. Instead we focus on more abstract mathematical models which have no obvious representation.
We can take as an example the design of an engineering artifact. Mathematical models (equations) exist which relate the artifact's performance to the parameters that describe the physical nature of that artifact. Thus, for a bridge, performances such as traffic capacity and cost can be calculated from a knowledge of parameters such as cable diameters and foundation depth. A designer needs to explore the relationships between parameters and performances in order to elicit a useful design.
The development of IVAs for such applications requires the creation of new representations that externalise pertinent aspects of the model. The IVAs we describe in this paper show how such novel representations can be created by interactively linking simple graphs in several ways. On a simple level we can link many similar graphs, as Becker et al [3] did with their "brushed" scatterplots (Figure 1). We can also link different types of representations together. For example, by selecting a subset of data on a histogram and colour encoding the same subset on a scatterplot. These links can also perform different functions - for example the selected subset could be colour encoded or it could be hidden from view.

Two IVAs for engineering design are described in this paper: the Influence Explorer and the Prosection Matrix. They exhibit powerful and effective linking both within and between IVAs.
Most of these IVAs only use one type of representation to display data. However a combination of representations may also be beneficial, since the user is then able to consider the problem from several different perspectives. Schmid and Hinterberger [15] have called this "Comparative Multivariate Visualisation" and embodied the concept in their "Visulab" software. Here four different representations (Parallel Coordinates [9], Andrews Plots [2], Permutation Matrices [4] and Multiple Scatterplots [3]) can be linked in several ways : encoding with colour, hiding part of the data and reordering the data. The use of several different representations of data, and the manner of their linking, is a key issue in the development of IVAs.
The design of any IVA should proceed with various characteristics of visual problem solving in mind (Tweedie [19]). As Nardi and Zarmer [11] point out, IVAs are external representations of the users problem which "stimulate and initiate cognitive activity". Zhang and Norman [21] identify that such external representations act as memory aids; provide information perceptually without need for interpretation; anchor and structure cognitive behaviour; and change the task.
Suchman [18] emphasises that "it is frequently only on acting in a present situation that its possibilities become clear". In other words users will often pick up information opportunistically from their environment. It is partly this tendency to stimulate opportunistic behaviour that makes IVAs interesting. Consequently, the visual cues provided must be designed to support this opportunistic process.

The designer must choose numerical values for parameters in such a way that the performances they influence, usually in a very complex fashion, take on values acceptable to a customer. In other words, when designing a light bulb, the designer has to keep a specification in mind. If for example they are asked to design a light bulb that will be very bright and last for at least 6 months then they need to find the set of parameters values that will satisfy this specification.


Figure 4 shows the rectangular tolerance region for the simple case of two
parameters. In the same space, an irregularly shaped "Region of Acceptability"
defines the location of all the artifacts that satisfy the performance
requirements. Achieving a good design is a matter of fitting these two regions
to each other with maximum overlap
Another such design objective might be the unit manufacturing cost of each bulb that is shipped to the customer. Usually the wider the tolerances are on the parameters the cheaper the bulb will be to manufacture.

In the initial stages of design the user will want to gain a qualitative understanding of the problem. The designer can place exploratory limits on parameters and performances, thereby defining ranges of those quantities. In Figure 5 a range of performance on S4 has been defined with a slider. This action leads to the colour linking (black) of those bulbs that lie within the selected range on the S4 histogram and all the other histograms, so that the selected subset can be viewed across all the histograms. The potential for exploring the inter-relation between parameters and performances is now apparent. Confidence in these perceived relations can be sought by interactively moving the selected range of S4 up and down its scale and observing the corresponding movement of the highlighted bulbs on the other scales. The power of such a dynamic action to generate insight is difficult to convey in static words and diagrams, but is strikingly obvious in actual use.
It is worth emphasising that the discovery of a "trade-off" relation between two performances is immensely important in engineering design. In the Influence Explorer this discovery is virtually immediate, whereas in conventional design practice such a trade-off might be discovered only after tedious search or, at worst, not at all.
Additional tools enhance the functionality of the Influence Explorer. A
mouse-click on a bulb in one histogram highlights that same bulb, and displays
corresponding values, in all the other histograms. Another option connects these
points with a line and allows the comparison of several different bulbs. These
lines are known as "parallel coordinate" plots [9]. Yet another option places a
circle on each of the histogram scales indicating the mean of the currently
selected bulbs (see figure 5). This is useful when a range is being moved as it
eases detection of trends.

As already explained, inevitable variations
in the manufacturing process are such that, in the design of a
mass-produced artifact such as a light bulb, the designer must be
concerned with the selection of parameter ranges rather than specific
values. It is the combination of all these selected parameter ranges that must
satisfy the performance limits defined by the customer.

Parameter ranges are defined by the selection of upper and lower limits (Figure 7 - colour ), in exactly the same manner as for the performances. Again, the selection of parameter limits invokes a linking mechanism, once more leading to additional colour encoding. Though at first sight complex, the coding is, we suggest, matched to an engineering designer's real needs and, given the motivation provided by a tool offering responsive exploration, is readily, even eagerly learned. Figure 8 (colour) is a replica of Figure 4 with the relevant colour codings shown. Figure 8 and the table attached to figure 7 may help clarify the rationale behind this coding:
Red denotes bulbs that satisfy all limits. They lie within parameter limits (and are therefore manufactured) and they satisfy the customer's performance limits.
Black denotes a bulb that satisfies all the performance limits but lies outside one parameter limit , and is therefore not manufactured. Thus it will turn red if one parameter limit is adjusted to include it.
Blue bulbs are those which are manufactured (and hence lie within parameter limits) but fail one or more performances. These are the bulbs which cause a reduction in yield. Tightening a parameter limit to eliminate blue bulbs (for example raising the lower limit of X1 in Figure 7) will reduce the number of manufactured artifacts which violate a customer's requirements, hence raising the yield. The Blue bulbs are coded in two shades of blue - Dark Blue indicates those bulbs that are manufactured and only violate one performance limit; relaxation of that performance limit will turn those bulbs into red ones (e.g. in figure 7 expanding the lower limit on S1 will turn the dark blue bulbs red). Light Blue indicates those bulbs which are manufactured and violate more than one performance limit.
Grey bulbs are those which fail one parameter range and one or more performance limits. They would therefore turn blue if they were to be enclosed within the tolerance region. Thus in Figure 7 if the upper limit on X2 is extended to turn the black bulbs into red ones, this gain in the number of (red) acceptable bulbs would be offset by the number of grey bulbs turning blue and, thereby, adding unsatisfactory bulbs to the manufacturing process.
The principal advantage of such colour coding is that it indicates how
altering the parameter or performance limits will effect the overall
usefulness of the design.
100% yield can obviously be achieved by making the parameter ranges
sufficiently small (Figure 14 - colour ), but another overall objective - the
minimisation of manufacturing cost - militates against such a solution. It is
normally the case that the wider the parameter ranges, the lower the cost of the
artifact. There is therefore a strong incentive to select parameter ranges that
are as wide as possible commensurate with an acceptably high yield (see Figure
15 - colour ).

The construction of each scatterplot is illustrated conceptually in Figure 9 for the simple case of a 3-parameter system. p1 and p2 are the scatterplot's two parameters. p3 is a third parameter on which a parameter range has been set. Only data that falls within p3's chosen parameter range is projected down onto the p1p2 plane. This is a projection of a section of parameter space, hence the name Prosection (the term came from by a paper by Furnas and Buja [8]). This prosection process is repeated for every pair of parameters so that each scatterplot is displaying different data. The tolerance ranges for the scatterplots two parameters (p1 and p2 in figure 9) can also be projected on to the plot in the form of a tolerance box.
The Prosection Matrix shown in Figure 10 actually refers to a situation in which each parameter range is very small, leading to a small tolerance region (the small grey dot in the centre of each scatterplot). Because the parameter ranges are small, they define a very thin 'slice' through multi-dimensional parameter space, and therefore the resulting scatterplots show well-defined boundaries associated with the different performance limits of Figure 10. The colour coding used defines how well designs satisfy these performance limits. In Figure 10 designs that are acceptable are black, those that failed only one performance limit are dark grey and those that fail two are medium grey etc. One of the benefits of this colour coding is that the designer can explore the effect of moving the boundaries in the scatterplot. Thus, in Figure 11, the designer has moved the lower limit of performance S3 even lower. A comparison of Figure 10 and 11 reveals how the corresponding boundary has moved, increasing the area of the (here, black) acceptable region. Exploration of this kind allows a designer to form a strategy for combining and trading off different performance requirements.
Though Figure 9 provides a conceptual illustration of the formation of each scatterplot within the Prosection Matrix it is actually unsuitable for implementation because it would result in a very grainy representation. Instead, each scatterplot is filled using a matrix of small coloured squares. For example if we consider the (top left) X1X2 scatterplot in Figure 11 its area is divided in 442 squares, The Cartesian coordinates of each square's midpoint defines values of X1 and X2. Values of X3 and X4 are then selected randomly from within their tolerance range for each square. The corresponding values of the performances S1 to S4 are then computed from the model and compared with their respective limits. The square is then coloured according to the scheme already defined. For clarity, in the case of Figure 11 the X3 and X4 ranges are actually set to a single point so no randomisation occurs.
The existence of significant parameter ranges rather than single parameter values changes the detailed appearance of the Prosection Matrix but not its general character (Figure 12). Again consider the X1X2 scatterplot (top left). The original value of X1 has been replaced by a range of X1 as indicated by the yellow line. The immediate effect is that for all the scatterplots that don't have X1 as an axis, X1 is now randomly chosen within the selected range of X1 values rather than set at a single value. The increased fuzziness of these plots reflects this process. The rest of Figure 12 shows the effect of additionally assigning ranges to X2, X3 and X4.

Figure 13 (colour ) shows how the Prosection Matrix looks when the
performance and parameter limits are set as in Figure 7. The red regions now
correspond to acceptable bulbs, whereas those that are manufactured lie within
the yellow tolerance regions. The small percentage of red points within this
region indicate a low yield (19%).
In Figure 14 (colour plate) the user has set the tolerances to very narrow ranges to find a high yield (100%). Since wider tolerance ranges are normally associated with lower cost, the designer will endeavour to make the yellow -bounded tolerance region as large as possible, perhaps even trading off manufacturing yield against cost. Figure 15 (colour plate) shows how the user has adjusted the parameter ranges so that they just fit inside the red region, resulting in much wider tolerances (potentially cheaper components) whilst maintaining a reasonably high yield (96%)

We learnt some very simple lessons from these evaluations:
a) Maximise the directness of the interactivity. For example one version of the Prosection Matrix forced users to map their interaction from the sliders. However users preferred to select and drag the tolerance box directly .
b) Seek out the most crucial information and then represent it appropriately and simply. The most obvious example of this was the colour coding. Initially when considering the interface for setting up a performance specifications we attempted to colour code all the different variations of failure. Then we realised that this coding could be considerably simplified if we focused on encoding data that satisfied the performance limits and perhaps more importantly data that almost satisfied those limits. Colour coding the influence explorer for tolerance design was more difficult. The solution presented in this paper (Figure 8) has attempted to reduce the colour coded information to that which will provide immediate and useful information.
c) There is a trade-off between the amount of information, simplicity and accuracy. Ensuring that there is sufficient information to complete a task was an important issue. This emerged in the Influence Explorer when we tried adding tolerances with the original precalculated dataset. Using dynamic focused sampling overcame this problem.
There are many reasons for this enthusiasm. One is the readiness with which opportunistic as well as planned exploration can be carried out. Another is the directness of external representations. Abstract Mathematical Models are difficult for the untrained user to interpret. However using these IVAs the problem holder can explore the model for themselves, and make use of their own considerable experience and knowledge to test the models validity in their own terms. A mathematical model is one thing, but an externalisation of that mathematical model that can be responsively explored is quite another. A third reason is that these tools transform a very difficult cognitive problem into a much easier perceptual task.
Many avenues of research and experimentation still need to be followed up. One concerns the enhancement of the designer's expertise by some of the automated tolerance design algorithms developed over the last two decades. One such algorithm was incorporated within the Influence Explorer and, when invoked, automatically and very rapidly (e.g. 10 seconds) adjusted the 'nominal value' of each parameter (the mid-point of the selected parameter range) to maximise the yield. Nevertheless, this automation needs to be complemented by an interface which will facilitate the human observation and guidance of automated design.
[2] Andrews D.F. "Plots of High-Dimensional Data" Biometrics, March 1972, pp 69-97
[3] Becker R.A., Huber P.J., Cleveland W.S. and Wilks A.R., "Dynamic Graphics for Data Analysis", Stat. Science 2, 1987.
[4] Bertin J., "Graphics and Graphic Information Processing", deGruyter Press, Berlin, 1977.
[5] Chalmers M., "Using a Landscape to represent a corpus of documents", Springer-Verlag Proceedings of COSIT '93, Elba, pp. 377-390, September 1993.
[6] Eick S.G., Steffen J.L. and Sumner E.E., " SeeSoft - A Tool for Visualizing Line Oriented Software", IEEE Transactions on Software Engineering, pp. 11-18, 1992.
[7] Feiner S. and Beshers C."Worlds within Worlds: Metaphors for Exploring n-Dimensional Virtual Worlds", ACM Proceeings 1990 Conference on User Interface Software Design, pp 76-83
[8] Furnas G.W. and Buja A., "Prosection Views: Dimensional Inference through Sections and Projections", Journal of Computational and Graphic Statistics 3 (4), pp. 323-353, 1994.
[9] Inselberg A., "The plane with parallel co-ordinates", The Visual Computer 1, pp. 69-91, 1985.
[10] Keim D.A. and Kriegal H., "VisDB: Database Exploration using Multidimensional Visualization", IEEE Computer Graphics and Applications September, pp. 40-49, 1994.
[11] Nardi B.A. and Zarmer C.L., "Beyond Models and Metaphors: Visual Formalisms in User Interface Design", Journal of Visual Languages and Computing 4, pp. 5- 33, 1993.
[12] Newton C.M., " Graphics: from alpha to omega in data analysis", Graphical Representation of Multivariate Data, P.C.C. Wang (Ed) New York: Academic Press, pp. 59-92, 1978.
[13] Mihalisin T., Gawlinski E., Timlin J. and Schwegler J., "Visualizing Scalar Field on an N-dimensional Lattice", Proceedings of Visualization 90, IEEE CS Press, pp. 255-262, 1990.
[14] Rao R. and Card S.K., "The Table Lens: Merging Graphical and Symbolic Representations in an Interactive Focus + Context Visualization for Tabular Information", Proceedings of CHI'94, Boston, ACM Press, pp. 318-322, 1994.
[15] Schmid C. and Hinterberger H., "Comparative Multivariate Visualization Across Conceptually Different Graphic Displays", Proceedings of the SSDBM VII, IEEE Computer Society Press, September 1994.
[16] Spoerri A., "InfoCrystal: A visual tool for Information retrieval" Proceedings of Visualization '93 pp150-157.
[17] Suchman L.A., "Plans and Situated Actions - The Problem of Human-Machine Communication", Cambridge University Press, 1987.
[18] Tweedie L.A., Spence R., Bhoghal R. and Williams D., "The Attribute Explorer", ACM, Video Proceedings and Conference Companion, CHI'94, pp. 435-436, April 1994.
[19] Tweedie L.A., "Interactive Visualisation Artifacts: how can abstractions inform design?", People and Computers X : Proc. of HCI'95 Huddersfield, (Eds) Kirby M.A.R., Dix A.J. and Finlay J.E., Cambridge University Press, pp. 247-265, 1995.
[20] Williamson C. and Shneiderman B., "The Dynamic HomeFinder: Evaluating dynamic queries in a real estate information exploration system", ACM, Proceedings SIGIR'92, pp. 339-346, 1992.
[21] Zhang J. and Norman D.A., "Representations in Distributed Cognitive Tasks", Cognitive Science 18, pp. 87-122, 1994.
Externalising Abstract Mathematical Models l.tweedie@ic.ac.uk