Graph-Drawing Contest Report

MITSUBISHI ELECTRIC RESEARCH LABORATORIES http://www.merl.com Graph-Drawing Contest Report Peter Eades, Joe Marks TR95-14 December 1995 Abstract ...
Author: Calvin Gardner
2 downloads 0 Views 242KB Size
MITSUBISHI ELECTRIC RESEARCH LABORATORIES http://www.merl.com

Graph-Drawing Contest Report

Peter Eades, Joe Marks

TR95-14

December 1995

Abstract This report describes the the Second Annual Graph Drawing Contest, held in conjunction with the 1995 Graph Drawing Symposium in Passau, Germany. The purpose of the contest is to both monitor and challenge the current state of the art in graph-drawing technology.

This work may not be copied or reproduced in whole or in part for any commercial purpose. Permission to copy in whole or in part without payment of fee is granted for nonprofit educational and research purposes provided that all such whole or partial copies include the following: a notice that such copying is by permission of Mitsubishi Electric Research Laboratories, Inc.; an acknowledgment of the authors and individual contributions to the work; and all applicable portions of the copyright notice. Copying, reproduction, or republishing for any other purpose shall require a license with payment of fee to Mitsubishi Electric Research Laboratories, Inc. All rights reserved. c Mitsubishi Electric Research Laboratories, Inc., 1995 Copyright 201 Broadway, Cambridge, Massachusetts 02139

MERLCoverPageSide2

1. First printing, TR95-14, October 1995.

1

1 Introduction Text descriptions of three attributed graphs and the contest rules were made available on the World-Wide Web (at http://www.uni-passau.de/agenda/gd95/competition.html and http://www.cs.brown.edu/calendar/gd95/) for this year's contest. The graph attributes included both a name and type attribute for each vertex. An e ective graph drawing had to communicate not only the edge connections between vertices, but also the vertex-attribute values. Thus the main judging criterion was one of information visualization. A secondary criterion was the degree to which the drawing was generated automatically, that is, without manual intervention. Approximately 40 graphs were submitted by the contest deadline. The emphasis on information visualization and the nature of the graphs resulted in a very eclectic mix of drawings. The winners were selected by a panel of judges, and are shown below.

2 Winning submissions and honorable mentions 2.1 Graph A

Graph A models the architecture of a computer chip and was based on the hand-drawn original shown in Figure 1 [1]. The winning drawing was submitted by Georg Sander of Universitat des Saarlandes ([email protected]), and is shown in Figure 2. The manual steps needed to produce this drawing included a partitioning of the graph into subgraphs, adjustment of the level assignments of the nodes, and selection of various rendering parameters. Layout was computed automatically using the author's VCG tool in four seconds on a Sparc ELC workstation. Two other drawings of Graph A received honorable mention. Figure 3 contains the drawing of Paulis Kikusts ([email protected]) and Peteris Rucevskis ([email protected]) from the University of Latvia. The drawing in Figure 4 was submitted by Thomas Kamps, Jorg Kleinz, and Thomas Reichenberger ([kamps, kleinz, reichen]@darmstadt.gmd.de) from IPSI, GMD Darmstadt.

2.2 Graph B

Graph B represents a collection of global symbols (e.g., functions, types, les, etc.) for a small part of a large X program. The name and type attribute values for this graph's vertices are particularly unwieldy. The winning drawing for Graph B, shown in Figure 5, was submitted by Falk Schreiber and Carsten Friedrich ([schreibe, friedric]@fmi.uni-passau.de) of Universitat Passau. Their strategies for coping with the awkward types and names included the use of color to convey vertex-type information, rotation of the drawing prior to text-label placement to avoid excessive label overlaps, rendering the edges in grayscale to enable visible overprinting

MERL-TR-95-14

September 1995

2

Figure 1: Original hand-drawn copy of Graph A.

MERL-TR-95-14

September 1995

3

Figure 2: Winner, Graph A.

MERL-TR-95-14

September 1995

MERL-TR-95-14 C STAGE INSTRUCTION CONTROL UNIT

PIPELINE CONTROL INSTRUCTION CONTROL UNIT

PSW SSW INSTRUCTION CONTROL UNIT

ALU FLOATING POINT UNIT

ENCODER FLOATING POINT UNIT

R FLOATING POINT UNIT

FPU REGISTER FILE 8 X 64 FLOATING POINT UNIT

MUX FLOATING POINT UNIT

ALIGN DATA BUS INTERFACE

MUX INTEGER EXECUTION UNIT

INPUT DATA BUS INTERFACE

OUTPUT DATA BUS INTERFACE

DATA BUS TO D CAMMU EXTERNAL

A STAGE INTEGER EXECUTION UNIT

MUX INTEGER EXECUTION UNIT

ALU INTEGER EXECUTION UNIT

SHIFTER INTEGER EXECUTION UNIT L1 INTEGER EXECUTION UNIT

L2 INTEGER EXECUTION UNIT

PROGRAM COUNTER INSTRUCTION CONTROL UNIT

MUX INTEGER EXECUTION UNIT

GENERAL REGISTER FILE 32 X 32 INTEGER EXECUTION UNIT

ACCUMULATOR FLOATING POINT UNIT

J REG INSTRUCTION CONTROL UNIT

MUX INTEGER EXECUTION UNIT

DRV INSTRUCTION BUS INTERFACE

INSTRUCTION BUS TO I CAMMU EXTERNAL

RCV INSTRUCTION BUS INTERFACE

MUX INSTRUCTION CONTROL UNIT

B STAGE INSTRUCTION CONTROL UNIT

MUX MACRO INSTRUCTION UNIT

ROM ADDR MACRO INSTRUCTION UNIT

MACRO INSTRUCTION ROM MACRO INSTRUCTION UNIT

ROM REG MACRO INSTRUCTION UNIT

MUX INSTRUCTION BUS INTERFACE

INSTRUCTION BUFFER 4 X 16 INSTRUCTION BUS INTERFACE

drawing tool: GRADE Windows (see GD ’95 demo) Fully automatic pre-layout as ER diagram followed by manual editing of node placement in AUTOMATIC-RECTILINEAR mode automatically avoiding node overlapping.

Drawing of graph A by Paulis KIKUSTS and Peteris RUCEVSKIS e-mail: [email protected], [email protected]

4

Figure 3: Honorable mention, Graph A.

September 1995

5

Figure 4: Honorable mention, Graph A. MERL-TR-95-14

September 1995

6

main.c:pix_sw

graphics.c:GRDisplayPoint

X11/Xlib.h:XDrawString /usr/include/stdio.h:sprintf gremlin.h:dby_to_win gremlin.h:dbx_to_win X11/X.h:GXxor main.c:SUN_YORIGIN main.c:SUN_XORIGIN main.c:display X11/Xlib.h:struct Xlib_h_22 X11/Xlib.h:Display X11/Xlib.h:ScreenFormat :struct _XDisplayAtoms X11/Xlib.h:struct _XDisplay :struct _XSQEvent :struct _XFreeFuncs :struct _XContextDB :struct _XExten

long2.c:GRDisplayPoint short.c:GRDisplayPoint long1.c:GRDisplayPoint

X11/Xlib.h:struct Xlib_h_7 :struct _XIMFilter :struct _XKeytrans :struct _XrmHashBucketRec X11/Xlib.h:Screen X11/Xlib.h:struct Xlib_h_6 X11/X.h:Window X11/Xlib.h:Status X11/Xlib.h:struct Xlib_h_21 X11/Xlib.h:Depth

main.c:pix_gc

X11/Xlib.h:XChangeGC X11/X.h:GCFunction graphics.c:text_pf

X11/Xlib.h:XCopyPlane /usr/include/strings.h:strlen main.c:Artmode X11/Xlib.h:XFontStruct

X11/X.h:Colormap

X11/Xlib.h:XModifierKeymap X11/X.h:KeySym X11/X.h:GCFont X11/Xlib.h:struct Xlib_h_57 icons/icon.littlepoint:littlepoint_pm X11/Xlib.h:struct Xlib_h_20 gremlin.h:FALSE

X11/Xlib.h:struct Xlib_h_5

X11/Xlib.h:Visual gremlin.h:PMRec icondata.c:mpr_static

X11/Xlib.h:XFontProp X11/Xlib.h:XCharStruct

X11/X.h:KeyCode X11/Xlib.h:GC X11/Xlib.h:struct Xlib_h_4

gremlin.h:struct PMRec X11/Xlib.h:struct Xlib_h_56 X11/Xlib.h:struct Xlib_h_55

X11/X.h:VisualID X11/Xlib.h:XExtData

X11/Xlib.h:struct _XGC

X11/Xlib.h:struct _XExtData X11/X.h:Atom X11/X.h:GContext X11/Xlib.h:XPointer X11/Xlib.h:XGCValues X11/Xlib.h:Bool X11/Xlib.h:struct Xlib_h_3 X11/X.h:Font

Falk Schreiber ([email protected]) Carsten Friedrich ([email protected])

X11/X.h:XID

Layouted using ffgraph’s sugiyama with adjusting some text-labels for better readability Background of icons not masked due to limitations in ffgraph’s eps export module

X11/X.h:Pixmap

Figure 5: Winner, Graph B.

MERL-TR-95-14

September 1995

7 of text labels, and some manual adjustment of label placements. Layout was performed using a Sugiyama-style algorithm. Honorable mentions for Graph B went to Georg Sander of Universitat des Saarlandes ([email protected]) for the drawing in Figure 6 and to Vladimir Batagelj and Andrej Mrvar ([vladimir.batagelj, andrej.mrvar]@uni-lj.si) from the University of Ljubljana for the drawing in Figure 7. In the latter drawing, the text-label problem was nessed by using a legend (not shown) to decode a coloring and numbering of nodes.

2.3 Graph C

Unlike Graphs A and B, Graph C was contrived without reference to a real-world application. However, what it lacks in verisimilitude it makes up for in diculty, because it is a planar graph that is especially hard to draw well. Two joint winners were declared for Graph C. They are shown in Figures 8 and 9. The former drawing was submitted by Vladimir Batagelj and Andrej Mrvar ([vladimir.batagelj, andrej.mrvar]@uni-lj.si) from the University of Ljubljana. They used an energy-minimization approach to compute the layout, and manual editing to reposition some nodes. The other winner was submitted by Paulis Kikusts ([email protected]) and Peteris Rucevskis ([email protected]) from the University of Latvia. Their approach to layout uses a blend of local placement heuristics, supplemented by some manual editing. An honorable mention for Graph C was awarded to the entry submitted by Harald Lauer ([email protected]) of Universitat Tubingen. It is shown in Figure 10.

3 Acknowledgments Sponsorship for this contest was provided by AT&T Bell Labs, Mitsubishi Electric Research Labs, Tom Sawyer Software, Universitat Passau, and Volksbank Passau. Stephen North, Yanni Tollis, and Sue Whitesides assisted with the judging. Stephen North also provided the data for Graph B.

References [1] W. Hollingsworth, H. Sachs, and A. Smith. The CLIPPER processor: Instruction set architecture and implementation. CACM, 32(2):212, February 1989.

MERL-TR-95-14

September 1995

8

Fig.1: Graph B: Georg Sander ([email protected]) VCG tool: linear segment layout with splines. Crossings: 34, reverted edges: 1, self loops: 1. Crossing heuristics: median weights. Minor manual adjustment of line breaks of the text labels and of node sizes (node 34). Automatic pro ling facility of VCG tool. No further manual preparation.

Figure 6: Honorable mention, Graph B. MERL-TR-95-14

September 1995

9

24

37

26 23

27

32

2

3 1

33 20 4 13 19 18

17 29 21 11

22 56

16

5 15 9

6

12

7

8

58

28

54

14

10

57

55 30

53

38

52 25

51 69

50 42

39

66

59

61 49

62 60

44

41

64 40

45 65

46

43

35

34 72 73

31

48

70 68

71 67

63 36

47

Figure 7: Honorable mention, Graph B.

MERL-TR-95-14

September 1995

10

2

20 19 30 18 12

13

21

17 22

5

16

15

23

8 14

24

39

25 38

62

37

40 61

26

57

36 31

32 33

56

27

34

28 60

35 42

55 58

52

51

59 9

29

47

10 53

46

49

6

41 45 54 50

3

48

44

7 43

4 1

11

Figure 8: Joint winner, Graph C.

MERL-TR-95-14

September 1995

MERL-TR-95-14

t10

o

o

t12

o

o

o

o

o

t15

o o

o

o o

o

o

o

o

t14

t11

o

o

o

o

o

o

t3

t13

o

o

o

t6

o

o

o

t9

o

o

t1

o

t4

o

t7

o

o

o

o

o

o

o

o

o

o

o

o

o

o

t8

o t5

drawing tool: GRADE Windows (see GD ’95 demo) Fully automatic pre-layout as ER diagram followed by manual editing of node placement in AUTOMATIC-OBLIQUE mode automatically avoiding node overlapping.

Drawing of graph C by Paulis KIKUSTS and Peteris RUCEVSKIS e-mail: [email protected], [email protected]

t2

11

Figure 9: Joint winner, Graph C.

September 1995

MERL-TR-95-14

t10

o

o

o

o

o

o

t15

o

o

o

o

t14

t11

o

o

o

o

o

o

o

o

t13

t12

o

o

o

o

o

t1

t3

o

o

o

o

o

o

o

t6

t2

o

o

o

o

o

t4

t8

t7

t9

t5

o

o

o

o

o

o

o

o

o

o

o

o

12

Figure 10: Honorable mention, Graph C.

September 1995