11.2 Fish Eye Views

Human beings often recognize their own neighborhood in great detail, while they only perceive landmarks in greater distance. This "fish eye perspective" can be observed in many real word examples. A person living in Boston knows the street names of the local neighborhood, the names of the towns in the greater Boston area, and some major towns in Massachusetts. But the farther away and the less important the towns are, the less likely it is that the person knows them. The person very likely knows about Los Angeles and San Francisco, although they are on the other side of the continent, because they are rather large and important. A city like San Antonio, Texas, on the other hand, although it is also rather large, is much less likely to be known to the Boston person, because it seldom appears in the Boston headlines. Generalizing our geography fish eye example, we see that there are two things which define the perception of an object: distance from the viewer and a priori importance to the viewer. This concept was first formalized by George Furnas in a frequently cited paper [Fur86]. In this section we first present Furnas' approach and then introduce a graph based extension by Sarkar and Brown [Sar92] in the next section.

Furnas defines a Degree of Interest function (DOI-function) that assigns to each point in the structure a number telling how important this point is for the viewer. The viewer is supposed to be located on one designated point y in the structure. This means, that a fish eye view is always in relation to one particular point y in the structure, which we call focus. In Furnas' simple model the DOI-function is composed of the distance of each other point x from the focus y and the a priori importance that each point in the structure has. This means, that for each point x in the structure its DOI-function is computed using the following formula:

DOI(x) = a priori importance of x - Distance between x and focus y

Figure I.54 illustrates the computation of the DOI-function for a small, hierarchical structure. Figure I.54 can, for example, be thought of as a management hierarchy in a company. The director of the company, located at the root of the tree, gets an a priori importance of 0, for each step down in the hierarchy level, the a priori value is reduced by 1. The number of edges between y and another node x is taken as distance.


Figure I.54 Computation of DOI values for small hierarchy

If figure I.54 depicts a management hierarchy in a company, y stands for a simple employee. If the employee is new to the company, he or she eventually only knows a zero order fish eye view of the management, i.e., his or her own direct boss and the director of the whole company (figure I.55). After some more working days, the new employee eventually proceeds to a first order fish eye view knowledge about the personnel: he or she now also knows his or her colleagues in the same department and all the department heads.


Figure I.55 Zero and first order fish eye views

Speaking more formally, we have defined a threshold k and only displayed the nodes x in the tree for which DOI(x) >= k. By displaying only the most interesting nodes we get a "zero order fish eye view", adding the second most interesting nodes to the displayed nodes results in a "first order fish eye view", etc...

Furnas describes in his seminal paper the use of fish eye views for text-based applications like viewing large source code program fragments [Fur86]. The next subsection describes the extension of the fish eye view idea to 2-D graphical representations.