=Paper= {{Paper |id=Vol-1244/ED-paper3 |storemode=property |title=Generating and Navigating Large Euler Diagrams |pdfUrl=https://ceur-ws.org/Vol-1244/ED-paper3.pdf |volume=Vol-1244 |dblpUrl=https://dblp.org/rec/conf/diagrams/DelaneyKCN14 }} ==Generating and Navigating Large Euler Diagrams== https://ceur-ws.org/Vol-1244/ED-paper3.pdf
       Generating and Navigating Large Euler
                     Diagrams

         Aidan Delaney, Eric Kow, Peter Chapman and Jon Nicholson

                             University of Brighton,
                                United Kingdom
                        aidan@ontologyengineering.org
                              eric.kow@gmail.com
                  {p.b.chapman, j.nicholson}@brighton.ac.uk



      Abstract. We automatically generate Euler diagrams that are too large
      to be readable on screen configurations commonly found in Universities
      and offices. We discuss how principles from information visualisation
      can be employed to render large diagrams intelligible. Furthermore, con-
      crete examples implementing these information visualisation principles
      are presented. This work is at an early stage of development.


1   Introduction
Many visual logics are based on Euler diagrams, these include Peirce’s α and β
systems [10], first and second order spider diagrams [6, 3], constraint diagrams [7]
and concept diagrams [17]. User studies involving Euler diagram based logics
have considered their effectiveness for reasoning [14]. The effect of visual aspects
of the Euler diagram token syntax has also been investigated [2]. Euler diagrams
used in user studies typically contain fewer than 10 contours. Furthermore, vi-
sualisations using Euler diagrams, see [13] for an up-to-date survey, also tend to
use a small number of contours.
    By contrast, we generate Euler diagrams with 100’s of contours such that
we may, in the future, establish the effectiveness of using large Euler diagrams
for information visualisation. Such diagrams may arise when representing large
inheritance hierarchies found in biological models, UML class diagrams and se-
mantic web applications. Given our interest in these “real-world” application
areas, we adopt a very lose definition of what is considered to be a large dia-
gram. For our purposes, a large Euler diagram is one that is not readable when
presented on a computer screen. In this paper we wish to provide a starting
point to consider navigation of large Euler diagrams. In order to do this we
automatically and pragmatically generate large Euler diagrams.
    In investigating navigation in large Euler diagrams we are interested in mech-
anisms for implementing Shneiderman’s information seeking mantra [15]. Within
visualisation, Shneiderman’s mantra considers providing:
 – overview first,
 – zoom & filter, then




                                        23
 – details-on-demand.

Example implementations of these principles can be seen in figures 1a, 1b and 6a
respectively. The examples in figure 1 are drawn from the domain of computer
games. In figure 1a a small scale map of the virtual world can be seen in the top
right. It abstracts the graphical detail of the game in order to provide the player
with an understanding of their situation within the game world. An implemen-
tation of a semantic zoom operation within the game, figure 1b, presents the
possible area into which a particular game character (i.e. pawn c2) can move.
Finally, details of the previous game moves can be accessed on demand, as seen in
figure 6a. We now outline the structure of our discussion of how these operations
can be applied to large Euler diagrams.




                 (a)                          (b)                   (c)

            Fig. 1: Overview, zoom & filter and details-on-demand.



    In section 2 we explain how we pragmatically generate large Euler diagrams.
Following that, we provide examples of implementing overview functionality for
large Euler diagrams; section 3.1. We proceed to address the zoom & filter con-
cerns of Shneiderman’s mantra in section 3.2. Thereafter, in section 3.3, we
discuss the kinds of details-on-demand that are likely to be required in large
Euler diagrams. Finally, we conclude with a discussion on how we expect to
develop this work.


2   Generating Large Euler Diagrams

To generate large Euler diagrams, we first generate Euler diagrams containing
a small number of contours. Following [11], we then use constraint based layout
to compose the smaller diagrams into a large diagram. We make use of the
separation between abstract syntax and concrete syntax to generate small Euler
diagrams. A software tool, called iCircles, produces concrete layouts when
given an abstract description. The iCircles tool is an implementation of the
method, presented in [16], of inductively drawing Euler diagrams using circles. As




                                       24
such, the discussion that follows is restricted to consider Euler diagrams drawn
only with circles and breaking a well-formedness property by allowing duplicate
labels [12].
   The abstract syntax of an Euler diagram is described by the tuple hC, Z, Z ∗ i
where:
C is a finite set of contours,
Z is a subset of PC and denotes each zone of the diagram, and
Z ∗ is a subset of Z and denotes the shaded zones within a diagram.
Our presentation of a diagram zone differs from some of the literature on Euler
diagrams. In the literature it is common to present a zone as a partition of C
of the form (in, out) where in ⊆ C and out = C − in. The above definition of
zone matches the implementation within iCircles, where it is assumed that all
contours in C appear in a concrete diagram.
    An arbitrary Euler diagram is generated where d = hC, Z, Z ∗ i such that C is
a set of contours. In theory the set of zones, Z, is an arbitrary subset of the set
of all possible zones generated from C and Z ∗ is an arbitrary subset of Z. The
inductive circles algorithm then produces a concrete layout from this abstract
description. In practice, the iCircles implementation of the inductive circles
algorithm contains faults that limit it to generating concrete layouts for abstract
descriptions that describe sparse Euler diagrams. For n contours, the most sparse
Euler diagram contains n contours that are pairwise non-overlapping, the least
sparse diagram is Venn-n. Hence, we accede to pragmatism and take a heuristic
approach when generating Euler diagrams. We can reliably generate arbitrary
Euler diagrams with up to 6 contours. For higher numbers of contours we must
enforce sparseness heuristics. Improving the implementation of iCircles re-
mains a priority for future work.
    Our heuristics for generating sparse Euler diagrams are implemented as a
generator for arbitrary instances [4]. These arbitrary diagrams are consumed by
iCircles and the concrete layout is produced as a scalable vector graphic [1].
Each diagram generated by iCircles is termed a “cluster” within the large Euler
diagram. Constraint-based layout, provided by WebCoLa1 , is used to position
these clusters within a larger diagram [11]. The constraint based layout ensures
the individual clusters are placed close together but do not overlap. The example
output in figure 2 was generated using this process. We will use this as a running
example when discussing the aspects of Shneiderman’s mantra; overview, zoom
& filter and details-on-demand. Using this approach, generating a large Euler
diagram containing over 100 contours requires adding more small clusters to the
large diagram.

3     Shneiderman’s mantra
Having seen examples of overview, zoom & filter and details-on-demand in fig-
ure 1 we now present an examples of how to implement each of these principles
within large Euler diagrams.
1
    Available at https://github.com/tgdwyer/WebCola.




                                       25
                                         Organization




                                                                                                                                                                                         Agent
                                                                                                                                                                                                                         Band

                                                                                                                                                                                            Band                                Agent

  Band                                                                                                                                               Organisation
                                                                                                                                                                                                                                                                            Agent
                                                                                         Organisation                                                                                                                    Organisation
                                                                                 Band                                                                                                                                                                                       Band

                                                                                            Agent
                                                                          Organization
                                                                                                                                                        Agent


                 Organisation
                                                                                                        Organization                                 MusicGroup                                                                                                                Organisation


                                                                       MusicGroup
                                                                                                                                                                                                          Organization

                                                                                                                                                                                                                                                MusicGroup




                                         Agent                                                                                 Organisation




                                                                                                                                                                                                                                        Agent
                                                                                                                                  Band




                                                                                                          Organisation


                                                                               Agent
                                                  Agent
                                                                               Band




                                                                                                           Band                               Band                             Band



                                                                                                        MusicGroup                                                          MusicGroup
                                                   Agent

                                                   Band                                                                                                                                            MusicGroup




                                 Agent
                                                                                                                                                                                                                                                             Organisation
                                                                Organisation

                                                                                                                Organization                                           Agent

                  Organization

                                                                                                                                                                                                                         Organization
                                                                                                                                                                                                                                                                Agent

         Agent
                                                                                                                                                                    Organisation
         Band




                                                                                                                                                                                                                                                      Band
                                                        MusicGroup




                                                                      Fig. 2: An Euler diagram containing 51 circles.


3.1      Overview

The overview allows the user to orient themselves within the diagram. We have
two mechanisms that support orientation within the diagram:

 – a grid system acting in a manner similar to contour lines on a geographic
   map, and
 – a smaller overview map embedded in the view.

Figure 3 depicts a grid super-imposed on the diagram. The super-imposed grid
is rectilinear in order to contrast with the circular contours. Furthermore, the
grid lines decrease in frequency with respect to the distance from the centre
of the diagram. Using the grid, the operation of seeking a path to the centre
becomes a local operation of using the next smallest grid cell as a waypoint. Our
intention is that the grid provides some texture to the diagram. From all parts
of the diagram the grid indicates the direction to the centre of the diagram.
We have chosen the centre of the diagram as the focus of our navigation a the
WebCoLa layout constraints specify an even distribution of the clusters around
this position.
    More conventionally, a small “map” of the entire diagram can be seen on
the bottom left of figure 3. The map also displays an overlay of the current
viewport. The user may use the small map to navigate towards a particular ma
that is known to them. The small map may also allow a user to quickly jump to
an area of interest without panning from their current location.




                                                                                                                               26
                                                                                                                                                                                                                                                                                                              Organisation

                                                                                                                                                      Organisation


                                                                                                                                                                          Agent
                                                                                                                                                                                                                                                                                                                 Agent




                                                                                                                                                                                                                                                  Organization                                                MusicGroup




                                                                                                                                                                                                                                                                                               Organisation



                                          Organization




                                                                                                                                                                                          Agent
                                                                                                                                                                                                                          Band

                                                                                                                                                                                             Band                                Agent

   Band                                                                                                                                               Organisation
                                                                                                                                                                                                                                                                             Agent
                                                                                          Organisation                                                                                                                    Organisation
                                                                                  Band                                                                                                                                                                                       Band

                                                                                             Agent




                                                                                                                                                                                                                                                                                                  Band
                                                                           Organization
                                                                                                                                                         Agent


                  Organisation
                                                                                                         Organization                                 MusicGroup                                                                                                                Organisation


                                                                        MusicGroup
                                                                                                                                                                                                           Organization

                                                                                                                                                                                                                                                 MusicGroup




                                          Agent                                                                                 Organisation




                                                                                                                                                                                                                                         Agent
                                                                                                                                   Band




                                                                                                           Organisation


                                                                                Agent
                                                   Agent
                                                                                Band




                                                                                                            Band                               Band                             Band



                                                                                                         MusicGroup                                                          MusicGroup
                                                    Agent

                                                    Band                                                                                                                                            MusicGroup




                                  Agent
                                                                                                                                                                                                                                                              Organisation
                                                                 Organisation

                                                                                                                 Organization                                           Agent

                   Organization

                                                                                                                                                                                                                          Organization
                                                                                                                                                                                                                                                                 Agent

          Agent
                                                                                                                                                                     Organisation
          Band




                                                                                                                                                                                                                                                       Band
                                                         MusicGroup




                                                                                                                                                                                                                                 Fig. 3: The overview mechanism.


    In both of our attempts to provide overview features for large Euler diagrams
we adopt well-known techniques from cartography. From the abstract descrip-
tion of an Euler diagram, there is no way to reason about the concrete relative
position of contours x and y in a large diagram. Therefore, it remains to be seen,
through user studies, whether or not large Euler diagrams lend themselves to
the cartographic navigational approach.

3.2                                   Zoom & Filter
Zooming also affects the small map. The viewport over the small map will in-
crease in area as the user zooms out. Other concerns when considering zoom
within large Euler diagrams include:
 – the level at which to remove information from the visualisation, and
 – the visual cost of not removing information from the visualisation.
To explore these issues, consider the deep containment hierarchy in figure 4a.
In order to reduce visual clutter in the diagram it appears reasonable to hide
a number of the innermost contours from the view. Their suppression can be
indicated by employing ellipses. This raises the question of how often the most
deeply nested contour within the hierarchy is considered, for practical purposes,
to be more important than the intermediate levels? In such cases the highest and
lowest level contours can be presented and the intermediate level contours are
suitably elided. However, figure 4b presents an example where the intermediate
levels of a deep containment hierarchy introduce three zones at the lowest levels.




                                                                                                                                                                                                                                                                                                    27
Eliding the intermediate level contours in this example is not straightforward
and suggests that there is no one-size-fits-all heuristic.




                                                            F
                        F


                                                            E


                        E


                                                        D

                        D



                                                                     C
                        C




                        B
                                                                 B




                        A                                        A




                       (a)                                      (b)

                            Fig. 4: Deeply nested contours.



    Rather than remove information from the diagram we view filtering as the
process of improving the signal to noise ratio of the visualisation. Figure 5 a user
searches for the name of a contour present in the diagram. Searching for a contour
name highlights all of the occurrences of that contour within the diagram, both
in the main view and within the small map. Within the main view, highlighting
the contour is intended to boost its signal with respect to the background noise.
Highlighting a contour within the small map is intended to aid navigation when
panning across a large Euler diagram.
    The interaction between zoom & filter within a large Euler diagram requires
further exploration. Suppose a contour is only visible at the most detailed zoom
level. Furthermore, the contour has been omitted from the current view in order
to reduce the visual clutter. If a user then searches for the name of the hidden
contour, should it be added to the current view and highlighted, or is the fil-
ter operation restricted to searching the current zoom level? Moreover, can a
general tradeoff between zoom and filter be made for large Euler diagrams, or
is the tradeoff dependant on the domain of application i.e. should the balance
be different when visualising a software engineering class diagram as opposed to
medical information?

3.3   Details on Demand
The principle of details-on-demand is less straightforward to apply to Euler
diagrams. Euler diagrams represent sets and their relationships. There are no
details other than those that are in plain view. However, it is still possible to




                                         28
                                                                                                                                                                                                                                                                                                                                                          Organisation

                                                                                                                                                      Organisation


                                                                                                                                                                          Agent
                                                                                                                                                                                                                                                                                                                                                             Agent




                                                                                                                                                                                                                                                  Organization                                                                                            MusicGroup




                                                                                                                                                                                                                                                                                                                                           Organisation



                                          Organization




                                                                                                                                                                                           Agent
                                                                                                                                                                                                                           Band

                                                                                                                                                                                              Band                                Agent

   Band                                                                                                                                               Organisation
                                                                                                                                                                                                                                                                              Agent
                                                                                          Organisation                                                                                                                     Organisation
                                                                                  Band                                                                                                                                                                                        Band

                                                                                             Agent




                                                                                                                                                                                                                                                                                                                                              Band
                                                                           Organization
                                                                                                                                                         Agent


                  Organisation
                                                                                                         Organization                                 MusicGroup                                                                                                                 Organisation


                                                                        MusicGroup
                                                                                                                                                                                                            Organization

                                                                                                                                                                                                                                                  MusicGroup




                                          Agent                                                                                 Organisation




                                                                                                                                                                                                                                          Agent
                                                                                                                                   Band




                                                                                                           Organisation


                                                                                Agent
                                                   Agent
                                                                                Band




                                                                                                            Band                               Band                             Band



                                                                                                         MusicGroup                                                          MusicGroup
                                                    Agent

                                                    Band                                                                                                                                             MusicGroup




                                  Agent
                                                                                                                                                                                                                                                               Organisation
                                                                 Organisation

                                                                                                                 Organization                                           Agent

                   Organization

                                                                                                                                                                                                                           Organization
                                                                                                                                                                                                                                                                  Agent

          Agent
                                                                                                                                                                     Organisation
          Band




                                                                                                                                                                                                                                                        Band
                                                         MusicGroup




                                                                                                                                                                                                                                                               Fig. 5: The filter mechanism.



provide a user with details about a particular contour of interest. Figure 6a is
an example depicting three clusters consisting of 2, 3 and 4 contours. Suppose a
user is interested the details of the highlighted contour. Figure 6b uses constraint
based layout to vertically align clusters containing the interesting contour. In this
configuration the user needs only scroll through the list of details, rather than
navigate the entire diagram




                                                                                                                                                                                                                                                                                                                                                                                                     Band

                                                                                                                                                                                                                                                                                                                                                                                                            Agent
                                                                                                                                                                                                                           Band

                                                                                                                                                                                                                                                        Agent                                                                                                                                        Organisation


                                                                                                                                                                                                                            Organisation




                                                                                                                                                                                                                                                                                                MusicGroup
                                                                                                                                                                                                                                                                                                                                                                         MusicGroup




                                                                                                                                                                                                                                                                                                                            Organisation

                                                                                                                                                                                                                                                                                                                                                                                                            Organisation




                                                                                                                                                                                                                                                                                                             Organization
                                                                                                                                                                                                                                                                                                                               Agent
                                                                                                                                                                                                                                                                                                                                                                                      Organization
                                                                                                                                                                                                                                                                                                                                                                                                               Agent




                                                                                                                                                                                                                                                                (a)                                                                                                  (b)

                                                                                                                                                                                          Fig. 6: A details on demand mechanism.




                                                                                                                                                                                                                                                                                                                                                29
4    Conclusion
We have presented a pragmatic approach to generating large Euler diagrams for
the purposes of exploring their navigation. The pragmatic approach combines
existing tools to generate small Euler diagrams that are combined into large dia-
grams using constraint based layout. Furthermore, we have presented an outline
implementation Shneiderman’s information visualisation mantra within a viewer
for large Euler diagrams.
    The work is at an early stage of development. Our intention is to develop
the Euler diagram generation such that it is using semantic web data from
DBPedia [9]. Given real data and a usage context we will then run user studies
to establish the tradeoffs involved in zoom & filter. Furthermore, given real data
it will be possible to compare large Euler diagrams against visualisations such
as topic maps [8] and conceptual graphs [5]. We are particularly interested in
extending the inductive circles algorithm to layout concept diagrams [17].


References
 1. http://www.w3.org/TR/SVG/ (2011)
 2. Blake, A., Stapleton, G., Rodgers, P., Cheek, L., Howse, J.: The impact of shape on
    the perception of euler diagrams. In: Proceedings of the International Conference
    on the Theory and Application of Diagrams (2014)
 3. Chapman, P., Stapleton, G., Delaney, A.: On the expressiveness of second-order
    spider diagrams. Journal of Visual Languages & Computing 24(5), 327 – 349 (2013)
 4. Claessen, K., Hughes, J.: Testing monadic code with QuickCheck. SIGPLAN No-
    tices 37(12), 47–59 (Dec 2002), http://doi.acm.org/10.1145/636517.636527
 5. Dau, F.: The Logic System of Concept Graphs with Negations: And its Relationship
    to Prediacte Logic. Springer Verlag (2003)
 6. Howse, J., Stapleton, G., Taylor., J.: Spider diagrams. LMS Journal of Computa-
    tion and Mathematics 8, 145–194 (2005)
 7. Kent, S.: Constraint diagrams: Visualizing invariants in object oriented modelling.
    In: International Conference on Object Oriented Programming, Systems, Lan-
    guages and Applications. pp. 327–341. ACM Press (October 1997)
 8. Le Grand, B., Soto, M.: Visualisation of the semantic web: Topic maps visualisa-
    tion. In: Information Visualisation, 2002. Proceedings. Sixth International Confer-
    ence on. pp. 344–349 (2002)
 9. Lehmann, J., Isele, R., Jakob, M., Jentzsch, A., Kontokostas, D., Mendes, P.N.,
    Hellmann, S., Morsey, M., van Kleef, P., Auer, S., Bizer, C.: DBpedia - a large-
    scale, multilingual knowledge base extracted from wikipedia. Semantic Web Jour-
    nal (2014)
10. Peirce, C.: Collected Papers, vol. 4. Harvard University Press (1933)
11. Riche, N.H., Dwyer, T.: Untangling Euler diagrams. Visualization and Computer
    Graphics, IEEE Transactions on 16(6), 1090–1099 (2010)
12. Rodgers, P., Zhang, L., Stapleton, G., Fish, A.: Embedding wellformed Euler di-
    agrams. In: 12th International Conference on Information Visualization. pp. 585–
    593. IEEE (2008)
13. Rodgers, P.: A survey of euler diagrams. Journal of Visual Languages and Com-
    puting 25, 134–155 (2014)




                                         30
14. Sato, Y., Mineshima, K., Takemura, R.: The efficacy of Euler and Venn diagrams
    in deductive reasoning: Empirical findings. In: Proceedings of the International
    Conference on the Theory and Application of Diagrams. pp. 6–22 (2010)
15. Shneiderman, B.: The eyes have it: a task by data type taxonomy for information
    visualizations. In: Visual Languages, 1996. Proceedings., IEEE Symposium on. pp.
    336–343 (Sep 1996)
16. Stapleton, G., Zhang, L., Howse, J., Rodgers, P.: Drawing euler diagrams with
    circles: The theory of piercings. IEEE Transactions on Visualization and Computer
    Graphics 17(7), 1020–1032 (July 2011)
17. Stapleton, G., Howse, J., Chapman, P., Delaney, A., Burton, J., Oliver, I.: Formaliz-
    ing concept diagrams. In: 19th International Conference on Distributed Multimedia
    Systems. pp. 182 – 187. Knowledge Systems Institute (2013)




                                          31