<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Asymmetric Visual Hierarchy Comparison with Nested Icicle Plots</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Fabian Beck</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Franz-Josef Wiszniewsky</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Michael Burch</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Stephan Diehl</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Daniel Weiskopf</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Trier</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>VISUS, University of Stuttgart</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <fpage>53</fpage>
      <lpage>62</lpage>
      <abstract>
        <p>The comparison of hierarchies is a data analysis task for that a number of visualization approaches already exist. Generally, this can be regarded as a special form of graph comparison. These techniques typically handle two or more compared hierarchies all in the same way. In many practical applications, however, there are reasons why one of the hierarchies is more important than others. We, hence, propose a novel visualization approach to reflect this asymmetry in importance. A focused primary hierarchy is visualized as a large icicle plot, whereas a secondary hierarchy is only shown on demand, nested in the nodes of the primary hierarchy. Similarities of the two hierarchies are color-coded. We show the applicability of the approach in a case study comparing a hierarchically organized software system to a clustering result.</p>
      </abstract>
      <kwd-group>
        <kwd>Hierarchy comparison</kwd>
        <kwd>hierarchy visualization</kwd>
        <kwd>graph clustering</kwd>
        <kwd>graph visualization</kwd>
        <kwd>software visualization</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Hierarchies help abstracting large sets of entities on multiple levels of detail. Being used
in file systems, for classifying species, or organizing companies, they are a ubiquitous
structure for analyzing data. Hierarchies are often also used to abstract and simplify
graphs, for instance using graph clustering. It is, however, not always clear how a set
of entities needs to be structured as a hierarchy: different opinions of experts might
exist, several clustering algorithms can be used, or hierarchies change over time. Hence,
oftentimes competing variants of hierarchies exist. Finding and interpreting similarities
and differences in hierarchies is a non-trivial task but that can be supported by
visualization.</p>
      <p>When comparing hierarchies, one hierarchy might be more important or acts as a
kind of reference in the comparison. For instance, when a software developer
compares a hierarchical decomposition of a software system to an automatically generated
clustering of the same system based on the dependency graph, the original structure
is probably more important: the developer knows that structure very well and might
only be willing to change it gradually. In another case, when comparing the
hierarchical file structure on your personal computer to a backup copy, probably the focus is on
the current file structure not on the copy. Another example is biologists contrasting their
classification of species or a standard one to a newly proposed classification. In general,</p>
      <p>primary hierarchy
Nested Icicle Plots
secondary hierarchy
a
a</p>
      <p>B</p>
      <p>A
b
A
C
b
C</p>
      <p>B
B</p>
      <p>E
D
E
D
c
c
d
c
a
d
c
a
high
low
similarity
it might be even more likely that the two hierarchies compared have a different level of
relevance for the application at hand, rather than that they are equally important.</p>
      <p>With these observations, we propose the novel visualization approach of Nested
Icicle Plots for comparing two hierarchies as illustrated in Figure 1. While most
previous approaches are inherently symmetric (i.e., handle and visualize the hierarchies
alike), our approach is one of few approaches that focuses on an asymmetric
comparison and treats the hierarchies differently. In particular, we show the primary hierarchy as
a screen-filling icicle plot. The color of each node encodes its similarity to the secondary
hierarchy. A detailed comparison can be obtained on demand in the form of an icicle
plot of the secondary hierarchy nested within the icicle representation of the primary
hierarchy. Interactions like local zooming enable the user to analyze larger hierarchies
with this technique. We demonstrate the approach in a case study on restructuring a
software project according to a clustering result.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        Hierarchy visualization can be considered as a discipline of graph visualization.
However, many independent visualization techniques have been introduced that are
specialized to this subproblem and were surveyed by Ju¨ rgensmann and Schulz [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ].
Besides node-link diagrams, standard techniques include stacking approaches like icicle
plots [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] or nesting approaches like treemaps [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Also radial variants of these
techniques were explored, for instance, bubble layouts for node-link diagrams [
        <xref ref-type="bibr" rid="ref5 ref6">5, 6</xref>
        ] or
circular versions of icicle plots [
        <xref ref-type="bibr" rid="ref7 ref8 ref9">7–9</xref>
        ]. These visualizations, by default, display only one
hierarchy, but some of them have been already tailored for comparison.
      </p>
      <p>
        The visual comparison of hierarchical structures was surveyed by Graham and
Kennedy [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. They classified existing approaches into five categories: edge drawing,
coloring, animation, matrix representation, and agglomeration. Our approach of Nested
Icicle Plots falls into two categories of this taxonomy: it shares characteristics of an
agglomeration approach because the focus is one hierarchy that contains information
from the other hierarchy; in addition, coloring is used to show similarities. On a higher
level of abstraction, the approach is a form of visual comparison and can be classified as
an explicit encoding according to the taxonomy of Gleicher et al. [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]: similarities and
differences of the hierarchies are explicitly encoded in the visualization through colors.
      </p>
      <p>
        In general, most of previous work on hierarchy comparison handles the compared
hierarchies symmetrically. For instance, TreeJuxtaposer [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] places two hierarchy
representations next to each and enables a comparison based on color-coding as well as
brushing and linking. Holten and van Wijk [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] use two icicle plots with leaf nodes
facing each other and connect the leaf nodes by bundled edges indicating equivalent nodes.
Based on a similar layout, Lutz et al. [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] discuss the editing of hierarchies in context of
comparison. Beck and Diehl [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] use a matrix to indicate similarities in two hierarchies
attached to the sides of the matrix. Also, the temporal evolution of hierarchies has been
studied already [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ].
      </p>
      <p>
        We, however, found only few examples with an asymmetric hierarchy comparison.
One example is Trees in a Treemap [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], where a treemap is overlaid by a node-link tree
diagram. While the treemap stays readable, the layout of the node-link diagram, being
dictated by the treemap, hardly is. Bremm et al. [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] compare multiple hierarchies and
use, amongst others, views that compare one reference hierarchy to a set of others: a
node-link representation of the reference hierarchy is color-coded in one view to
illustrate which nodes are preserved in the other hierarchies; another view shows the set of
other hierarchies as juxtaposed node-link diagrams and therein encodes differences to
the reference. A similar view has already been described by Chevenet et al. [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ].
Although those approaches work with an asymmetric representation, they do not exploit
this asymmetry specifically for the application scenario at hand.
      </p>
      <p>
        Other agglomeration-based techniques also show one main hierarchy that encodes
differences of two original hierarchies, but the agglomerated hierarchy is constructed
symmetrically. Guerra Gomez et al. [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] map the change of node weights to color and
size of the nodes, whereas nodes only appearing in one of the compared hierarchies are
marked by a special border line. Graham and Kennedy [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] construct and visualize a
direct acyclic graph from multiple hierarchies; a kind of colored bar code within the
nodes indicates which nodes belong to which original hierarchy. In contrast to these
approaches, our approach shows the primary hierarchy as is and does not merge two
hierarchies.
      </p>
      <p>primary
hierarchy
a</p>
      <p>B
secondary
hierarchy
color-coded primary hierarchy:</p>
      <p>A A
a</p>
      <p>B
b
node-link
c</p>
      <p>A
b
c
a
B
b
c
indented outline plot
a
a</p>
      <p>D
A
b</p>
      <p>C
c
B
c</p>
      <p>E
d
high
low
similarity
a</p>
      <p>
        A
b
c
icicle plot
treemap
The basic idea of our approach is color-coding similarities of the two hierarchies in the
primary hierarchy and showing details on demand of the secondary hierarchy nested in
the nodes of the primary one. Although this idea is independent of the visual
representation of each of the hierarchies, icicle plots seem particularly suitable for implementing
the approach. In particular, our version of nested hierarchies, as illustrated in Figure 1
and implemented in a prototype, is based on nesting icicle plots. Interactions are
important to increase the flexibility and visual scalability of the approach.
Depicting a single hierarchy—as a node-link tree diagram, an indented outline plot, an
icicle plot, or a treemap (Figure 2, cf. [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ])—the elements of the hierarchy are
represented by visual circular or rectangular nodes. The color of these nodes can be used for
encoding a property of the nodes. For an asymmetric hierarchy comparison, the
colorcoded property for the nodes of the primary hierarchy should relate to the similarity of
the node to the nodes of the secondary hierarchy. The metric needs to determine whether
a node in one hierarchy has an equivalent, or at least similar node in the other hierarchy.
Hence, for each node in the primary hierarchy, we want to find the most similar node in
the secondary hierarchy.
      </p>
      <p>While it is possible to use different definitions of similarity for this, one of the
most straightforward candidates is measuring the relative overlap of pairs of nodes: In
particular, we assume that there exists an equivalence relation for entities represented
by leaf nodes (e.g., provided through the name of the node). Then, each node represents
a set of entities. In case of leaf nodes, this set has only a single element while inner
nodes aggregate descendant entities of leaf nodes. A measure of set overlap of two sets
A and B is the Jaccard coefficient
sim(A; B) = jA \ Bj :</p>
      <p>jA [ Bj
For each node of the primary hierarchy, the most similar node in the secondary
hierarchy can be retrieved. This maximum similarity is finally mapped to the color of the
nodes and creates hierarchy visualizations as depicted in Figure 2 for different types of
hierarchy representations.</p>
      <p>Hence, this approach assigns each node of the first hierarchy (at least) one most
similar node in the secondary hierarchy. Please note that the same node of the secondary
hierarchy can be assigned to multiple nodes of the primary hierarchy. If the primary
hierarchy is identical to the secondary hierarchy, all maximum similarities of nodes of the
primary hierarchy are 1.0. This also holds if additional intermediate nodes are inserted
into the secondary hierarchy, but not if additional intermediate nodes are inserted into
the primary hierarchy. For two hierarchies containing the same set of leaf nodes, the
similarity value of the root nodes is always 1.0 because the two root nodes are a perfect
match.
3.2</p>
      <p>Nesting Hierarchies
For a detailed comparison it is, however, also important to see which elements of the
secondary hierarchy cause a certain similarity. Therefore, we may embed a small
representation of the secondary hierarchy into each node of the primary hierarchy, which
shows the similarities between the node of the primary hierarchy and the full secondary
hierarchy. We use the color of each node of the secondary hierarchy to encode its
Jaccard similarity to the surrounding node of the primary hierarchy. This is demonstrated
in Figure 1 for node B of the primary hierarchy using icicle plots. Doing this for the
complete primary hierarchy, every node of the primary hierarchy is compared to every
node of the secondary hierarchy. This approach has a clear focus on the primary
hierarchy as it is represented only once in large size whereas the secondary hierarchy is
represented in small multiples, each time from the perspective of a node of the primary
hierarchy.</p>
      <p>This basic approach is open to arbitrary hierarchy representations where nodes
are visualized as closed-shape visual objects. If the nodes are already nested like in
a treemap (Figure 2), however, there is no room for depicting a secondary hierarchy, at
least not for inner nodes. For other representations that use links, spatial closeness, or
indentation for encoding the hierarchy (Figure 2), a secondary hierarchy can be
embedded into the nodes of the primary hierarchy. It is even possible to use different
representations for the primary and secondary hierarchy.</p>
      <p>Nevertheless, some representations are more suitable for the intended purpose than
others. For instance, nodes of node-link diagrams are quite small because space is
required for drawing the links, which considerably limits the space that can be used for
drawing the secondary hierarchy. The nodes of indented outline plots, in contrast, are
more space filling. Each node—inner nodes and leaf nodes—has the same size, which
is advantageous for small hierarchies because the secondary representation always has
the same space and aspect ratio; it is a problem, however, for larger hierarchies when
this standard size becomes too small. In contrast, in icicle plots, the size of the inner
nodes accumulates the sizes of all children so that even in larger hierarchies, the main
inner nodes have reasonable size to encode a secondary hierarchy. Icicle plots are
further able to completely fill every rectangular shape. Hence, we recommend using icicle
plots for representing the primary hierarchy. One downside of this, however, is that the
nodes have different aspect ratios.</p>
      <p>For embedding the secondary hierarchy into the nodes of the icicle plots, also an
arbitrary hierarchy representation can be selected. Again, we chose icicle plots, for two
main reasons: first, they stay quite readable at for larger datasets and visualized in small
size, and second, the user does not have to deal with two different paradigms to visualize
a hierarchy. Instead of using the same orientation of the icicle plots for both hierarchies,
we recommend flipping the orientation of the secondary hierarchy by 90 relative to the
primary hierarchy—the two hierarchies can be easily discerned. Hence, either
horizontally split icicle plots are contained in vertically split ones, or vice versa. For landscape
format screens splitting the primary hierarchy vertically as shown in Figure 1 is most
appropriate. These are just suggestions, but the general nesting approach is open for
using other hierarchy setups and representations—which one works best under which
circumstances will need to be evaluated in user studies.
3.3 Interactive Comparison
The approach can be improved using interaction techniques. Making the alternatives
discussed above configurable, the representation can be optimized for each data set
individually. In particular, our prototype implementation allows for switching the
orientation of the two hierarchies individually. Other representations than icicle plots are
currently not supported by our implementations.</p>
      <p>Showing the secondary hierarchy for every node of the primary hierarchy quickly
leads to many small visual elements and hides the proposed color-coding of the primary
hierarchy. We therefore show the secondary hierarchy only on demand for selected
nodes of the primary hierarchy. Hence, the user first sees the color-coded primary
hierarchy; now, moving the mouse over a hierarchy node, a nested secondary hierarchy
appears as illustrated in Figure 1. To mark its current, distinct role, a hovered node
should become visually highlighted (here, with a thick yellow border). Since the
secondary hierarchy completely fills the inside space, the label of the node is attached to
the top of the rectangle.</p>
      <p>Although main inner nodes of the icicle plot are usually large enough to embed a
secondary hierarchy, it is difficult to retrieve information from small-sized lower inner
nodes as well as leaf nodes. Interactively zooming-in on a specific node alleviates this
problem. Instead of a global geometric zoom, we use a semantic zoom that enlarges a
node without displacing other nodes from screen or overlapping these—no scrolling is
required in this focus–context approach. To implement the zooming, weights determine
the width and height of a node. Initially, the height weight is constant for each node and
the width weight is based on the number of contained leaf nodes. Zooming-in on a node
increases both weights by a constant factor for the respective node. To keep all nodes on
one level aligned, the height weight of all other nodes at the same hierarchy level need
to be increased accordingly. Zooming-out reverses the weight increases respectively.
Figure 3 shows an example where the default representation (left) is zoomed in on node
6 (middle). Having mutiple zoomed foci is also possible, as shown in Figure 3 (right)
for nodes A and 6.
To illustrate the utility of our approach, we take up the software engineering scenario
briefly mentioned in Section 1: a software developer wants to restructure the
hierarchical modularization of a software system. The developer runs an automatic clustering
algorithm that produces an optimized hierarchical clustering with respect to the
dependency graph of the system. This clustering, however, is very different from the original
modularization. The developer does not want to restructure the complete system but
rather likes to compare the original modularization with the clustered one to check and
take over parts of the suggested changes.</p>
      <p>
        Demonstrating this application, we compare the hierarchical modularization of the
Azureus project (a Bittorent client, now called Vuze; restricted to the core3 package
with 477 classes and 69 subpackages) to a clustering result based on structural
dependencies within the project, as described in a study on software clustering [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] and
already visualized in a matrix-based approach [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] (details on the data acquisition are
described there). Since the developer is familiar with the original modularization and
inner nodes have meaningful labels, the original modularization is selected as the
primary hierarchy. Figure 4 (top) show this modularization with color-coding according to
the similarities to the clustered modularization.
      </p>
      <p>
        Dark colors tell that some of the modules of Azureus are well-matched by the
clustering result, for instance, html or ipfilter. Other modules, in contrast, are colored
only in light blue, indicating a low similarity to the clustered hierarchy, such as the
modules global or util; these are hardly confirmed by the clustering algorithm, as
looking at the nested clustering hierarchy confirms. Reasons are probably deficiencies
in the clustering algorithm: these particular two modules assemble functionality that is
globally used within Azureus and previous findings indicate that those global modules
can hardly be matched by clustering based on structural dependencies [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ].
      </p>
      <p>While it is good to know which are the well-matched and worse-matched modules,
partially matched modules might be of even larger interest: for those, the clustering
leads to a slightly different structure that, however, is not too far from the current
modularization. For an example of a detailed analysis of a partially matched module, we
choose the tracker module. Figure 4 (middle) shows the nested clustered hierarchies
retrieved on demand in zoomed-in versions of the tracker module; Figure 4 (bottom)
further provides details on its main submodules client, host, protocol, and server.</p>
      <p>The nested hierarchy within the tracker modules quickly reveals that the clustering
algorithm organized the content of the module mainly into two clusters: 0.0.0.1 and
0.0.0.7. Hence, clustering suggests splitting the module into two parts. According
to the nested hierarchies in the submodules, one part would consist of the client,
protocol, and server modules as they are assembled in cluster 0.0.0.1, whereas
the host module in 0.0.0.7 should become independent of the others. Following the
subcluster of cluster 0.0.0.1, the client and protocol module belong closer together
as they are both contained in cluster 0.0.0.1.2—adding another submodule wrapping
the two might further improve the modularization.</p>
      <p>In that way, the developer might proceed with the other partially matched modules
comparing the original modularization to the clustering result.
5</p>
    </sec>
    <sec id="sec-3">
      <title>Discussion and Limitations</title>
      <p>
        We are aware that there are several limitations of our approach:
– Visual scalability: The dimensions to be handled are the number of hierarchy
nodes and the depth of the hierarchy. Both decrease the size of the boxes, but
zooming remedies the problem.
– Algorithmic scalability: The comparison of hierarchies has at least a quadratic
runtime complexity with respect to the number of hierarchy nodes because all nodes
of one hierarchy need to be compared to all nodes of the other hierarchy (when all
nested icicle plots are required). However, for just computing the coloring of the
primary hierarchy, there exist faster solutions [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ].
– Multiple hierarchies: Two different scenarios are of interest here: First, we might
have to deal with one primary hierarchy and n secondary ones. A visualization can
be applied as small multiples of the primary hierarchy (each representing a 1:1
comparison). Second, the same situation might occur but the other way round—we
have to deal with n primary ones, but only one secondary candidate (again small
multiples but this time for the n primary ones).
      </p>
      <p>In general, the approach is not limited to the demonstrated example in Section 4,
but might be useful for other clustering applications in different domains such as in the
field of biology or for evaluating clustering algorithms.
6</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusion and Future Work</title>
      <p>Nested Icicle Plots are a novel approach to visual hierarchy comparison. Discussing
several design alternatives, we chose icicle plots as a hierarchy representation because
they are space-filling and flexible enough for the suggested nesting. Since showing the
nested structures at any time could produce information overload, the secondary
hierarchy is only depicted on demand, whereas color-coded nodes provide a preview of the
comparison by default. The case study gives a first example that demonstrated how the
visualization can be used in the context of software engineering; however, our approach
is general and can be applied to any hierarchy comparison problem. Being inherently
asymmetric, the technique is suitable for scenarios where one hierarchy is of particular
interest or importance.</p>
      <p>Future work includes to extend the hierarchy comparison to the comparison of
general graphs, i.e., a nested graph comparison. From a perceptual and a usability point of
view, our visualization technique still has to be evaluated in a comparative user study.
This may also be investigated by eye tracking, to give additional insights into when and
where problems occur.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>S.</given-names>
            <surname>Ju</surname>
          </string-name>
          <article-title>¨rgensmann and</article-title>
          <string-name>
            <surname>H.-J. Schulz</surname>
          </string-name>
          , “
          <article-title>A visual survey of tree visualization</article-title>
          ,
          <source>” IEEE VisWeek 2010 Posters</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2. H.
          <article-title>-</article-title>
          <string-name>
            <surname>J. Schulz</surname>
          </string-name>
          , “Treevis.
          <article-title>net: A tree visualization reference</article-title>
          ,
          <source>” IEEE Computer Graphics and Applications</source>
          , vol.
          <volume>31</volume>
          , no.
          <issue>6</issue>
          , pp.
          <fpage>11</fpage>
          -
          <lpage>15</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>J.</given-names>
            <surname>Kruskal</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Landwehr</surname>
          </string-name>
          , “Icicle Plots:
          <article-title>Better displays for hierarchical clustering</article-title>
          ,”
          <article-title>The American Statistician</article-title>
          , vol.
          <volume>37</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>162</fpage>
          -
          <lpage>168</lpage>
          ,
          <year>1983</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>B.</given-names>
            <surname>Shneiderman</surname>
          </string-name>
          , “
          <article-title>Tree visualization with Tree-Maps: 2-D space-filling approach</article-title>
          ,
          <source>” ACM Transactions on Graphics</source>
          , vol.
          <volume>11</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>92</fpage>
          -
          <lpage>99</lpage>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>S.</given-names>
            <surname>Grivet</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Auber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Domenger</surname>
          </string-name>
          , and G. Melanc¸on, “
          <article-title>Bubble tree drawing algorithm</article-title>
          ,”
          <source>in Proceedings of International Conference on Computer Vision and Graphics</source>
          ,
          <year>2004</year>
          , pp.
          <fpage>633</fpage>
          -
          <lpage>641</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>C. C.</given-names>
            <surname>Lin</surname>
          </string-name>
          and
          <string-name>
            <given-names>H. C.</given-names>
            <surname>Yen</surname>
          </string-name>
          , “
          <article-title>On balloon drawings of rooted trees</article-title>
          ,
          <source>” Graph Algorithms and Applications</source>
          , vol.
          <volume>11</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>431</fpage>
          -
          <lpage>452</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>K.</given-names>
            <surname>Andrews</surname>
          </string-name>
          and
          <string-name>
            <given-names>H.</given-names>
            <surname>Heidegger</surname>
          </string-name>
          , “Information Slices:
          <article-title>Visualising and exploring large hierarchies using cascading, semicircular disks</article-title>
          ,”
          <source>in Proceedings of IEEE Symposium on Information Visualization</source>
          ,
          <year>1998</year>
          , pp.
          <fpage>9</fpage>
          -
          <lpage>11</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>J. T.</given-names>
            <surname>Stasko</surname>
          </string-name>
          and E. Zhang, “
          <article-title>Focus+context display and navigation techniques for enhancing radial, space-filling hierarchy visualizations</article-title>
          ,”
          <source>in Proceedings of the IEEE Symposium on Information Visualization</source>
          ,
          <year>2000</year>
          , pp.
          <fpage>57</fpage>
          -
          <lpage>65</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>J.</given-names>
            <surname>Yang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. O.</given-names>
            <surname>Ward</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. A.</given-names>
            <surname>Rundensteiner</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Patro</surname>
          </string-name>
          , “
          <article-title>InterRing: A visual interface for navigating and manipulating hierarchies</article-title>
          ,
          <source>” Information Visualization</source>
          , vol.
          <volume>2</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>16</fpage>
          -
          <lpage>30</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>M.</given-names>
            <surname>Graham</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Kennedy</surname>
          </string-name>
          , “
          <article-title>A survey of multiple tree visualisation</article-title>
          ,
          <source>” Information Visualization</source>
          , vol.
          <volume>9</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>235</fpage>
          -
          <lpage>252</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>M. Gleicher</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Albers</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Walker</surname>
            , I. Jusufi,
            <given-names>C. D.</given-names>
          </string-name>
          <string-name>
            <surname>Hansen</surname>
            , and
            <given-names>J. C.</given-names>
          </string-name>
          <string-name>
            <surname>Roberts</surname>
          </string-name>
          , “
          <article-title>Visual comparison for information visualization</article-title>
          ,
          <source>” Information Visualization</source>
          , vol.
          <volume>10</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>289</fpage>
          -
          <lpage>309</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>T.</given-names>
            <surname>Munzner</surname>
          </string-name>
          , F. Guimbretie`re, S. Tasiran,
          <string-name>
            <given-names>L.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhou</surname>
          </string-name>
          , “
          <article-title>TreeJuxtaposer: Scalable tree comparison using focus+context with guaranteed visibility</article-title>
          ,
          <source>” ACM Transactions on Graphics</source>
          , vol.
          <volume>22</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>453</fpage>
          -
          <lpage>462</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>D.</given-names>
            <surname>Holten</surname>
          </string-name>
          and
          <string-name>
            <surname>J. J. van Wijk</surname>
          </string-name>
          , “
          <article-title>Visual Comparison of Hierarchically Organized Data,” Computer Graphics Forum</article-title>
          , vol.
          <volume>27</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>759</fpage>
          -
          <lpage>766</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>R.</given-names>
            <surname>Lutz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Rausch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Beck</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Diehl</surname>
          </string-name>
          , “
          <article-title>Get your directories right: From hierarchy visualization to hierarchy manipulation,” in Proceedings of the 2014 IEEE Symposium on Visual Languages and Human-Centric Computing (to appear)</article-title>
          . IEEE,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>F.</given-names>
            <surname>Beck</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Diehl</surname>
          </string-name>
          , “
          <article-title>Visual comparison of software architectures,” Information Visualization</article-title>
          , vol.
          <volume>12</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>178</fpage>
          -
          <lpage>199</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>A.</given-names>
            <surname>Telea</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Auber</surname>
          </string-name>
          , “Code Flows:
          <article-title>Visualizing structural evolution of source code,” Computer Graphics Forum</article-title>
          , vol.
          <volume>27</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>831</fpage>
          -
          <lpage>838</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>M.</given-names>
            <surname>Burch</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Diehl</surname>
          </string-name>
          , “
          <article-title>Trees in a Treemap: visualizing multiple hierarchies,” in Visualization and Data Analysis</article-title>
          , vol.
          <volume>6060</volume>
          .
          <source>International Society for Optics and Photonics</source>
          ,
          <year>2006</year>
          , pp.
          <volume>60</volume>
          <fpage>600P</fpage>
          -
          <lpage>60</lpage>
          600P-
          <fpage>12</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18. S. Bremm, T. von Landesberger,
          <string-name>
            <given-names>M.</given-names>
            <surname>Hess</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schreck</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Weil</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Hamacherk</surname>
          </string-name>
          , “
          <article-title>Interactive visual comparison of multiple trees</article-title>
          ,
          <source>” in Proceedings of the 2011 IEEE Conference on Visual Analytics Science and Technology. IEEE</source>
          ,
          <year>2011</year>
          , pp.
          <fpage>31</fpage>
          -
          <lpage>40</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>F.</given-names>
            <surname>Chevenet</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Brun</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. L.</given-names>
            <surname>Banuls</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Jacq</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Christen</surname>
          </string-name>
          , “
          <article-title>TreeDyn: towards dynamic graphics and annotations for analyses of trees</article-title>
          ,
          <source>” BMC Bioinformatics</source>
          , vol.
          <volume>7</volume>
          , no.
          <issue>1</issue>
          , pp.
          <volume>439</volume>
          +,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>J. Guerra</surname>
          </string-name>
          <article-title>Go´mez, A</article-title>
          .
          <string-name>
            <surname>Buck-Coleman</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Plaisant</surname>
            , and
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Shneiderman</surname>
          </string-name>
          , “
          <article-title>Interactive visualizations for comparing two trees with structure and node value changes</article-title>
          ,” HumanComputer Interaction Lab, University of Maryland,
          <source>Tech. Rep.</source>
          ,
          <year>2011</year>
          . [Online]. Available: http://cgis.cs.umd.edu/localphp/hcil/tech-reports-search.php?number=
          <fpage>2011</fpage>
          -
          <lpage>22</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <given-names>M.</given-names>
            <surname>Graham</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Kennedy</surname>
          </string-name>
          , “
          <article-title>Exploring multiple trees through DAG representations</article-title>
          ,
          <source>” IEEE Transactions on Visualization and Computer Graphics</source>
          , vol.
          <volume>13</volume>
          , no.
          <issue>6</issue>
          , pp.
          <fpage>1294</fpage>
          -
          <lpage>1301</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <given-names>F.</given-names>
            <surname>Beck</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Diehl</surname>
          </string-name>
          , “
          <article-title>On the impact of software evolution on software clustering,” Empirical Software Engineering</article-title>
          , vol.
          <volume>18</volume>
          , no.
          <issue>5</issue>
          , pp.
          <fpage>970</fpage>
          -
          <lpage>1004</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <given-names>P.</given-names>
            <surname>Andritsos</surname>
          </string-name>
          and
          <string-name>
            <given-names>V.</given-names>
            <surname>Tzerpos</surname>
          </string-name>
          , “
          <article-title>Information-theoretic software clustering</article-title>
          ,
          <source>” IEEE Transactions on Software Engineering</source>
          , vol.
          <volume>31</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>150</fpage>
          -
          <lpage>165</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24. L. Zhang, “
          <article-title>On matching nodes between trees</article-title>
          ,” Systems Research Center Laboratory, HP Laboratories Palo Alto,
          <source>Tech. Rep.</source>
          ,
          <year>2003</year>
          . [Online]. Available: http://shiftleft.com/mirrors/www.hpl.hp.com/techreports/2003/HPL-2003-67.pdf
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>