© University of Kent - Contact | Feedback | Legal | FOI | Cookies
Inductively Generating Euler Diagrams
Gem Stapleton, Peter Rodgers, John Howse, and Leishi Zhang
Transactions on Visualization and Computer Graphics, 16(1):182-196, January 2011 The pdf contains both the main paper and the appendices. [doi].Abstract
Euler diagrams have a wide variety of uses, from information visualization to logical reasoning. In all of their application areas, the ability to automatically layout Euler diagrams brings considerable benefits. In this paper, we present a novel approach to Euler diagram generation. We develop certain graphs associated with Euler diagrams in order to allow curves to be added by finding cycles in these graphs. This permits us to build Euler diagrams inductively, adding one curve at a time. Our technique is adaptable, allowing the easy specification, and enforcement, of sets of wellformednesss conditions; we present a series of results that identify properties of cycles that correspond to the wellformedness conditions. This improves upon other contributions towards the automated generation of Euler diagrams which implicitly assume some fixed set of wellformedness conditions must hold. In addition, unlike most of these other generation methods, our technique allows any abstract description to be drawn as an Euler diagram. To establish the utility of the approach, a prototype implementation has been developed.
Download publication 808 kbytes (PDF)Bibtex Record
@article{2959, author = {Gem Stapleton and Peter Rodgers and John Howse and Leishi Zhang}, title = {{Inductively Generating Euler Diagrams}}, month = {January}, year = {2011}, pages = {182-196}, keywords = {determinacy analysis, Craig interpolants}, note = {The pdf contains both the main paper and the appendices.}, doi = {10.1109/TVCG.2010.28}, url = {http://www.cs.kent.ac.uk/pubs/2011/2959}, publication_type = {article}, submission_id = {19344_1255104850}, journal = {Transactions on Visualization and Computer Graphics}, publisher = {IEEE}, number = {1}, volume = {16}, }