InfoVis 2003 Contest - TreeJuxtaposer Entry

James Slack, Tamara Munzner
{jslack,tmm}@cs.ubc.ca
University of British Columbia
Francois Guimbretiere
francois@cs.umd.edu
University of Maryland

See Infovis 2003 Contest rules and task at http://www.cs.umd.edu/hcil/iv03contest/

Ratings used below: (Strength,Possible,Difficult,Not Available)

Pairwise comparisons of trees: Topological changes

Did anything change, in general, or in a subtree?

Rating:
Strength
Process:
The two overviews are shown side by side. Differences are highlighted in red and guaranteed to be visible.
Image:
Overview of Mammalia
Overview of Mammalia
Overview from 4 log files
Overview of 4 log files
Overview of 2 phylogenies
Overview of 2 phylogenies
Answer:

What nodes were added, deleted?

Rating:
Strength
Process:
The two overviews are shown side by side. Deletions appear red on the left (before) tree while additions appear red on the right (after) tree.
Image:
Expanded subtrees of mammalia subtree to highlight additions and deletions
Expanded subtrees of mammalia subtree to highlight additions and deletions
Additions in hcil directory of logs
Additions in hcil directory of logs
Answer:
animalia trees:
There may be some leaf nodes that are red which do exist in the other tree as non-leaf nodes. TreeJuxtaposer interprets a leaf node as being different from any non-leaf node.
file system trees:
There are a few nodes that are added between hcil.logs_A through hcil.logs_D. Since all 4 hcil subtrees are browsable simultaneously, it is visually clear which nodes have been added and which have been deleted. Observe the counterpoint directory for deletions and the iv03contest directory for additions.
phylogenetic trees:
No importantly named nodes are added or deleted in the phylo_A and phylo_B trees.

Did any node or subtrees "move" in the tree? Can you characterize those movements?

Rating:
Strength
Process:
The TreeJuxtaposer system is unable to automatically characterize subtree movements. Users can quickly explore the dataset by marking a subtree on one side and seeing whether its components are widely separated on the other side. The examples where the components are separated and close to each other are not true movements, but simply the result of the many additions and deletions.
Image:
Movement of subtree in mammalia tree
Movement of subtree in mammalia tree
Movement of subtree in phylogenetic tree
Movement of subtree in phylogenetic tree
Answer:
animalia trees:
We know at least one subtree moved in the mammalia tree (see the specific results in the Classification section). With a search of less than ten minutes, we were able to find a few examples: "octodontidae", "peramelemorphia."
file system trees:
No nodes were found to have moved between successive hcil logs as all activity was either insertions or deletions.
phylogenetic trees:
Most nodes in the phylo_A and phylo_B trees moved, but a few nodes managed to remain together and match between the two trees.

Pairwise comparisons of trees: Attribute value changes

Global impression: did things change a lot or not?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Since TreeJuxtaposer is not designed to handle attributes at this time, the attribute section of the contest will not be considered.

What nodes or subtrees changed the most?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Since TreeJuxtaposer is not designed to handle attributes at this time, the attribute section of the contest will not be considered.

Did the value of attribute XYZ for this node increase or decrease? In absolute terms, or relatively to other siblings or other nodes.

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Since TreeJuxtaposer is not designed to handle attributes at this time, the attribute section of the contest will not be considered.

General visualization of trees: Topology

Overall characteristics: How large is the tree? How many levels deep? What is the deepest branch? Does the depth vary between subtrees or not?

Rating:
Possible
Process:
The size of the tree can be determined by the number of leaf nodes since they are allocated a portion of vertical screen relative to the number of nodes in the tree. Using the keyboard arrow keys is useful for determining how dense the nodes are at the leaf level.
Image:
Shown elsewhere
Answer:

Path: What is the path of this node?

Rating:
Strength
Process:
The path of a node to the root is simply found using the left arrow key, the left arrow visits the parent of the current node.
Image:
Expanded path of homo sapiens in animalia tree
Expanded path of homo sapiens in animalia tree
Answer:
The homo sapiens example shows the path marked from leaf to root. A fully qualified naming system would show the path in the name of the nodes in the Find panel, which is also supported by TreeJuxtaposer.

Local relatives: What are the children, siblings, or cousins of this node?

Rating:
Strength
Process:
The children of the node can be scrolled through with the keyboard. The right arrow will select the first child and pressing the down arrow will then cycle through the children. Growing the node with the keyboard or mouse is a much better alternative and all children that can be displayed will be visible, instead of the keyboard method which only highlights one node at a time. Cousins are most easily found with the keyboard method though, as when the last child is selected, the next arrow down (or up, depending on the direction) will select the closest cousin.
Image:
Shown elsewhere
Answer:
See process for information

Filtering by level: Show only the first level, or show only 3 levels down, or remove all the leaves

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
TreeJuxtaposer cannot filter by rank or level.

Topologies question that involve counting nodes can be seen as attribute dependant questions: e.g. Which branch contains the largest number of nodes? or Which branch has the largest fan-out?

Rating:
Strength
Process:
The largest fan-out (the largest number of leaf nodes) is clearly visible when either selecting the root of an interesting subtree with a User Group or by hovering over. User Groups are more visible since they color the interesting nodes, but hovering over is much quicker at the expense of having to use the gray box that disappears when the mouse focusses on a different node. The largest number of nodes in a subtree is not quantitatively visible in TreeJuxtaposer, but the density of tree edges in a region corresponds to a larger number of nodes in a subtree and can be used to judge the relative size of a subtree.
Image:
users subtree highlighted in file system tree
users subtree highlighted in file system tree
Answer:
Internal nodes with large space above and below their horizontal edges (such as users in the image) have larger fan-out and therefore more leaf nodes.

General visualization of trees: Attribute based

Find nodes with high values of a numerical attribute X? (relative query)

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Since TreeJuxtaposer is unable to assess attributes of nodes, these tasks are not applicable for our system.

Find nodes with given value of a numerical attribute X? (absolute query)

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Since TreeJuxtaposer is unable to assess attributes of nodes, these tasks are not applicable for our system.

Find nodes with value Y of categorical attribute X - What value of a categorical attribute occurs more often? e.g. Are there more farm animals or pets?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Since TreeJuxtaposer is unable to assess attributes of nodes, these tasks are not applicable for our system.

Find nodes with certain values of two or more attributes (What video file is used the most?)

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Since TreeJuxtaposer is unable to assess attributes of nodes, these tasks are not applicable for our system.

Number of nodes in a tree or subtree? (How many animals? How many mammals?)

Rating:
Possible
Process:
The number of animal species is equal to the number of leaf nodes aligned on the right side of TreeJuxtaposer. The actual number of leaf nodes is not displayed but the total number of named nodes is available in the Find panel with a fully qualified naming structure. The number of mammals can be determined similarly with fully qualified names (or the number of dolphins, etc).
Image:
Shown elsewhere
Answer:
See process for information

Comparison of branches of the tree (Subtrees with most nodes; are there more mammals or fish?)

Rating:
Strength
Process:
By highlighting all nodes that start with "///animal/mammal" the number of mammals can be found. If you wanted to find the mammal subtree to perform this operation and typed "mammal" into the Find panel for classif_B, there are "mammal-nest beetles" which are not mammals. Since there are very few non-mammals with "mammal" in their name, it is easy to deselect the non-mammals from the Find panel and find the mammal subtree.
Image:
Mammals and bony fish subtrees highlighted in animal tree
Mammals and bony fish subtrees highlighted in animal tree
Answer:
There are more bony fish than mammals as can be seen in the image for this task.

Largest fanout (What is the largest group of animals with same lineage?)

Rating:
Strength
Process:
The largest fan-out (the largest number of leaf nodes) is clearly visible when either selecting the root of an interesting subtree with a User Group or by hovering over. User Groups are more visible since they color the interesting nodes, but hovering over is much quicker at the expense of having to use the gray box that disappears when the mouse focusses on a different node. The keyboard arrow keys (up and down) can be used to cycle through sibling or cousin nodes.
Image:
Shown elsewhere
Answer:
See process for information

General visualization of trees: Known items

Which nodes have a particular string in their label? (Find "giraffe" in a tree of animals)

Rating:
Strength
Process:
Use the Find panel and type in giraffe. All giraffes are now highlighted with the Found group.
Image:
All giraffe nodes highlighted
All giraffe nodes highlighted
Answer:
Only one species with the name "giraffe" was found in classif_B.

Locate a node knowing its path

Rating:
Strength
Process:
Finding a node with a known path can be done in the Find panel, or by browsing through the tree. The method used would depend on exactly what about the path is known. If the full path is known, then browsing through the tree from subtree to subtree may be faster since you wouldn't have to type the entire path into the tree. However, due to screen real-estate and the limited number of visible node labels, not being able to find a path element on a bushy tree is hard so time may be saved by simply typing it into the Find panel as a hint to which area to grow.
Image:
Shown elsewhere
Answer:
See process for information

Go back to a node you have visited before

Rating:
Possible
Process:
There is no undo feature in TreeJuxtaposer, but if you know that you would probably like to return to this node after exploring other parts of the tree, then marking the node with a User Group would be a good idea, if you don't run out of User Groups.
Image:
Shown elsewhere
Answer:
See process for information

General visualization of trees: Labeling

Review all the labels in a subtree

Rating:
Strength
Process:
All the labels in a subtree can be extracted through the Find panel. If a name is entered into the Find panel, the results are limited to the nodes that match the entry. Further navigation techniques such as keyboard (for fine control over sibling relationships), mouse-over (for coarse control on the entire tree) are also available.
Image:
Shown elsewhere
Answer:
See process for information

General visualization of trees: Browsing

Explore the tree by performing a series of up and downs in the tree

Rating:
Strength
Process:
These actions are easily performed with the mouse interface to resize subtrees to find interesting paths to leaf nodes. Starting with the animals tree classif_B (with common names), grow the vertebrates, mammals bigger, then find primates and then find gorillas and chimpanzees in the great apes subtree. Finding cats is a little more tricky but starting with mouse on primates, press the up arrow until carnivores is highlighted. Grow the carnivores selection with the keyboard until it is large enough to see the cats subtree. Use the mouse to resize the cats subtree until it's large enough to see cheetah and tiger.
Image:
Browsing example: cheetah and tiger highlighted
Browsing example: cheetah and tiger highlighted
Answer:
See process for information

General visualization of trees: Managing the analysis

Marking nodes of interest

Rating:
Strength
Process:
Up to 4 User Groups can be used to mark nodes of interest. The granularity of marking can either be Node or Subtree and multiple Node/Subtrees can be marked in the same group.
Image:
Shown elsewhere
Answer:
A node may belong to multiple groups simultaneously, and the groups are given drawing order relative to when they were last selected; the last group selected will draw over previous user groups if they both want to draw the same edge.

Removing special anomalies

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
TreeJuxtaposer can't modify the tree, and doesn't support saving or history.

Saving visualization settings for future reference

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
TreeJuxtaposer can't modify the tree, and doesn't support saving or history.

Keeping the history of your analysis, reviewing it and replaying it with different parameters

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
TreeJuxtaposer can't modify the tree, and doesn't support saving or history.

Phylogenies: Application specific tasks

The higher-level problem is to find the best way to map the similarities between the two trees topologies, which would indicate co-evolution, and, maybe, the point(s) where the two proteins were not co-evolving. Is there Co-evolution?

Rating:
Strength
Process:
Load phylogenetic trees. Differences will be shown and navigation can be used to compare trees.
Image:
Differences in phylogenetic tree
Differences in phylogenetic tree
3 subtrees highlighted (note relative positions)
3 subtrees highlighted (note relative positions)
Answer:

Interacting with the tree matching process to solve inconsistencies

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
TreeJuxtaposer does not have the functionality required to interact with the nodes at a low level since the matching process used is automatic.

Displaying the trees, with or without taking into account the branch length (the length of the links)

Rating:
Strength
Process:
Load trees into TreeJuxtaposer to view the trees.
Image:
Shown elsewhere
Answer:
This is the baseline use of TreeJuxtaposer.

Showing the relationships and differences from a computed or interactively constructed mapping

Rating:
Strength
Process:
Differences are automatically computed and displayed. Relationships may be reviewed using mouse over highlighting or User Groups.
Image:
Shown elsewhere
Answer:
The difference marking is provided by the automatic best-corresponding node algorithm in TreeJuxtaposer. Navigating through with mouse-over highlighting and marking subtrees with User Groups allows the user to recognize further similarities in the tree.

Providing ways to permute links and nodes to verify hypotheses interactively

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
TreeJuxtaposer also is not designed to modify the structure of the input given.

Classifications: Application specific tasks

To what extent are the differences in the classifications due to differences in how animals are thought to be related? Are there other kinds of differences and can you explain them?

Rating:
Strength
Process:
Differences are automatically highlighted and further exploration with linked highlighting show differences in animal classifications.
Image:
Node additions and deletions
Node additions and deletions
Differences for entire mammalia tree
Differences for entire mammalia tree
Rodentia classification check
Rodentia classification check
Movement of subtree in mammalia tree
Movement of subtree in mammalia tree
Answer:

Can you say in how many different subtrees a particular common name (such as "dolphin" or "horse") is used? How closely are these animals related? Are common names a good guide to understanding relationships?

Rating:
Strength
Process:
  1. Load tree classif_A_03-04-16.nh (common, fully qualified)
  2. Search for "dolphin": Find panel finds 53 leaf and non-leaf dolphins
  3. Search for "horse": Find panel finds 47 leaf and non-leaf horses
Image:
Common names using animals tree
Common names using animals tree
Highlighted all occurances of dolphin in common names
Highlighted all occurances of dolphin in common names
Highlighted all occurances of horse in common names
Highlighted all occurances of horse in common names
Marmot subtree common names comparison
Marmot subtree common names comparison
Marmot subtree latin names comparison
Marmot subtree latin names comparison
Common names comparison
Common names comparison
Latin names comparison
Latin names comparison
Answer:

How many species or subspecies are named after biologists named "Townsend"?

Rating:
Strength
Process:
  1. Load tree classif_A_03-04-16.nh (latin)
  2. Search for "townsend": Find panel finds 51 leaf and non-leaf townsend nodes
  3. Start new TreeJuxtaposer with classif_A (common)
  4. Search for "townsend": Find panel finds 45 leaf and non-leaf townsend nodes Some latin names appear in common trees since if a node has no common name, the latin name is used as a label.
Image:
Townsend name search with common tree
Townsend name search with common tree
Townsend name search with latin tree
Townsend name search with latin tree
Answer:

What kind of feedback does your tool provide to alert the user quickly when a wrong name is entered?

Rating:
Strength
Process:
  1. Load tree classif_A_03-04-16.nh (latin)
  2. Assume searching for Spirurida which is in the Nemata phylum
    Since you know Spirurida is a type of nemata (you're knowledgeable about worms and want to see the hierarchy under Spirurida).
  3. Enter "Spirulida" in Find box
  4. Grow Found nodes and notice that the wrong section grows and no worms appear.
  5. You read what you typed into the search box and realize the mistake and correct it.
Image:
Incorrect name search (spirulida instead of spirurida)
Incorrect name search (spirulida instead of spirurida)
Answer:

For the top five subtrees with the most nodes-- are they likely to have a parent of a particular rank? Or does this happen in many ranks? Can you comment on how useful "rank" is?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
We are unable to comment on rank since rank is an attribute that the TreeJuxtaposer system does not handle.

File system and usage logs: Application specific tasks

Where are the big directories?

Rating:
Strength
Process:
Big directories are immediately visible from the layout since the vertical space consumed by directories indicates how many total leaves are in the subdirectory structure.
Image:
File system tree
File system tree
Answer:

Can you see different patterns in the files? (Can you make out the difference between personal pages, class pages and research project pages?)

Rating:
Strength
Process:
Navigating and marking allows a user to investigate patterns in the files.
Image:
building and shankar directory observations
building and shankar directory observations
class directory expanded
class directory expanded
Research project directory expanded
Research project directory expanded
Answer:

Were there a lot of pages created recently? If so, in which part of the file system?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Since TreeJuxtaposer is unable to assess attributes of nodes, these tasks are not applicable for our system.

Are the newer directories bigger than the older projects?

Rating:
Difficult
Process:
Expand directories in sequential logs to determine if additions have been made recently. (TreeJuxtaposer isn't able to determine the age of a directory unless the directory has been added between the times which data was collected.)
Image:
users directory expanded
users directory expanded
cmsc434-0101 directory expanded
cmsc434-0101 directory expanded
cmsc838p directory expanded
cmsc838p directory expanded
spring2003 directory expanded (new courses)
spring2003 directory expanded (new courses)
projects directory expanded
projects directory expanded
Answer:

When was the page giving directions to the department last updated?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Finding the page giving directions to the department can not be done with TreeJuxtaposer since this would require the attribute describing the file contents (extracted from the <title> tag).

Which are the popular webpages?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Can't comment on usage since usage attributes aren't handled by TreeJuxtaposer.

Are there some labs more popular than others?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Can't comment on usage since usage attributes aren't handled by TreeJuxtaposer.

Which areas are getting more popular? Less popular?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Can't comment on usage since usage attributes aren't handled by TreeJuxtaposer.

Are new pages more popular that old pages?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Can't comment on usage since usage attributes aren't handled by TreeJuxtaposer.

Which old pages are popular?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Can't comment on usage since usage attributes aren't handled by TreeJuxtaposer.

What proportion of the pages are never used?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Can't comment on usage since usage attributes aren't handled by TreeJuxtaposer.

What proportion of the pages are seldom used?

Rating:
Not Available
Process:
Not Applicable
Image:
Not Applicable
Answer:
Can't comment on usage since usage attributes aren't handled by TreeJuxtaposer.

Other Strengths of the System

File system and usage logs: HCIL subtree 4-way comparison

Rating:
Strength
Process:
Open all 4 logs simultaneously and use the calculated differencs to find trees that have changed recently.
Image:
counterpoint directory expanded
counterpoint directory expanded
InfoVis 2003 Contest directory expanded
InfoVis 2003 Contest directory expanded
spacetree and timesearcher directories expanded
spacetree and timesearcher directories expanded
Answer: