]> granicus.if.org Git - graphviz/commitdiff
Initial revision
authorellson <devnull@localhost>
Thu, 23 Dec 2004 04:14:03 +0000 (04:14 +0000)
committerellson <devnull@localhost>
Thu, 23 Dec 2004 04:14:03 +0000 (04:14 +0000)
65 files changed:
awk/colortbl.awk [new file with mode: 0644]
awk/stringize.awk [new file with mode: 0755]
awk/typegraph.awk [new file with mode: 0644]
graphs/.cvsignore [new file with mode: 0644]
graphs/Makefile.am [new file with mode: 0644]
graphs/directed/.cvsignore [new file with mode: 0644]
graphs/directed/KW91.dot [new file with mode: 0644]
graphs/directed/Latin1.dot [new file with mode: 0644]
graphs/directed/Makefile.am [new file with mode: 0644]
graphs/directed/NaN.dot [new file with mode: 0644]
graphs/directed/abstract.dot [new file with mode: 0644]
graphs/directed/alf.dot [new file with mode: 0644]
graphs/directed/arrows.dot [new file with mode: 0644]
graphs/directed/awilliams.dot [new file with mode: 0644]
graphs/directed/clust.dot [new file with mode: 0644]
graphs/directed/clust1.dot [new file with mode: 0644]
graphs/directed/clust2.dot [new file with mode: 0644]
graphs/directed/clust3.dot [new file with mode: 0644]
graphs/directed/clust4.dot [new file with mode: 0644]
graphs/directed/clust5.dot [new file with mode: 0644]
graphs/directed/crazy.dot [new file with mode: 0644]
graphs/directed/ctext.dot [new file with mode: 0644]
graphs/directed/dfa.dot [new file with mode: 0644]
graphs/directed/fig6.dot [new file with mode: 0644]
graphs/directed/fsm.dot [new file with mode: 0644]
graphs/directed/grammar.dot [new file with mode: 0644]
graphs/directed/hashtable.dot [new file with mode: 0644]
graphs/directed/honda-tokoro.dot [new file with mode: 0644]
graphs/directed/jcctree.dot [new file with mode: 0644]
graphs/directed/jsort.dot [new file with mode: 0644]
graphs/directed/ldbxtried.dot [new file with mode: 0644]
graphs/directed/longflat.dot [new file with mode: 0644]
graphs/directed/mike.dot [new file with mode: 0644]
graphs/directed/nhg.dot [new file with mode: 0644]
graphs/directed/oldarrows.dot [new file with mode: 0644]
graphs/directed/pgram.dot [new file with mode: 0644]
graphs/directed/pm2way.dot [new file with mode: 0644]
graphs/directed/pmpipe.dot [new file with mode: 0644]
graphs/directed/polypoly.dot [new file with mode: 0644]
graphs/directed/proc3d.dot [new file with mode: 0644]
graphs/directed/record2.dot [new file with mode: 0644]
graphs/directed/records.dot [new file with mode: 0644]
graphs/directed/rowe.dot [new file with mode: 0644]
graphs/directed/sdh.dot [new file with mode: 0644]
graphs/directed/shells.dot [new file with mode: 0644]
graphs/directed/states.dot [new file with mode: 0644]
graphs/directed/structs.dot [new file with mode: 0644]
graphs/directed/switch.dot [new file with mode: 0644]
graphs/directed/table.dot [new file with mode: 0644]
graphs/directed/train11.dot [new file with mode: 0644]
graphs/directed/trapeziumlr.dot [new file with mode: 0644]
graphs/directed/tree.dot [new file with mode: 0644]
graphs/directed/triedds.dot [new file with mode: 0644]
graphs/directed/try.dot [new file with mode: 0644]
graphs/directed/unix.dot [new file with mode: 0644]
graphs/directed/unix2.dot [new file with mode: 0644]
graphs/directed/viewfile.dot [new file with mode: 0644]
graphs/directed/world.dot [new file with mode: 0644]
graphs/undirected/.cvsignore [new file with mode: 0644]
graphs/undirected/ER.dot [new file with mode: 0644]
graphs/undirected/Heawood.dot [new file with mode: 0644]
graphs/undirected/Makefile.am [new file with mode: 0644]
graphs/undirected/Petersen.dot [new file with mode: 0644]
graphs/undirected/ngk10_4.dot [new file with mode: 0644]
graphs/undirected/process.dot [new file with mode: 0644]

diff --git a/awk/colortbl.awk b/awk/colortbl.awk
new file mode 100644 (file)
index 0000000..54ab028
--- /dev/null
@@ -0,0 +1,39 @@
+# Copyright (c) AT&T Corp. 1994, 1995.
+# This code is licensed by AT&T Corp.  For the
+# terms and conditions of the license, see
+# http://www.research.att.com/orgs/ssr/book/reuse
+
+function rgb_to_hsb(r,g,b) {
+       r = r / 255.0; g = g / 255.0; b = b / 255.0;
+       max = r; if (max < g) max = g; if (max < b) max = b;
+       min = r; if (min > g) min = g; if (min > b) min = b;
+       v = max;
+       if (max != 0) s = (max - min) / max;
+       else s = 0;
+       if (s == 0) h = 0;
+       else {
+               delta = max - min;
+               rc = (max - r)/delta;
+               gc = (max - g)/delta;
+               bc = (max - b)/delta;
+               if (r == max) h = bc - gc;
+               else {
+                       if (g == max) h = 2.0 + (rc - bc);
+                       else h = 4.0 + (gc - rc);
+               }
+               h = h * 60.0;
+               if (h < 0.0) h = h + 360.0;
+       }
+       h = h / 360.0 * 255.0;
+       s = s * 255.0;
+       v = v * 255.0;
+}
+
+BEGIN  { s = ARGV[1]; gsub("\\.","_",s); printf("hsbcolor_t %s[] = {\n",s); }
+/^$/   { next; }
+/^#/   { next; }
+               {
+                       rgb_to_hsb($2,$3,$4);
+                       printf("{\"%s\",%d,%d,%d},\n",$1,h,s,v);
+               }
+END            { printf("};\n"); }
diff --git a/awk/stringize.awk b/awk/stringize.awk
new file mode 100755 (executable)
index 0000000..c52a2a2
--- /dev/null
@@ -0,0 +1,9 @@
+# Copyright (c) AT&T Corp. 1994, 1995.
+# This code is licensed by AT&T Corp.  For the
+# terms and conditions of the license, see
+# http://www.research.att.com/orgs/ssr/book/reuse
+
+BEGIN  { s = ARGV[1]; gsub (".*/", "", s); gsub("\\.","_",s); printf("char *%s[] = {\n",s); }
+/^#/   { print $0; next; }
+               { gsub("\\\\","\\\\",$0); printf("\"%s\",\n",$0); }
+END            { printf("(char*)0 };\n"); }
diff --git a/awk/typegraph.awk b/awk/typegraph.awk
new file mode 100644 (file)
index 0000000..735ebf2
--- /dev/null
@@ -0,0 +1,52 @@
+# Copyright (c) AT&T Corp. 1994, 1995.
+# This code is licensed by AT&T Corp.  For the
+# terms and conditions of the license, see
+# http://www.research.att.com/orgs/ssr/book/reuse
+
+BEGIN  {
+                       n_names = 0;
+                       printf("strict digraph typeref {\n");
+                       printf("        node [shape=record];\n");
+               }
+
+(NF == 1) {            # starts a new node in the node file
+                       Name[n_names++] = name = $1;
+                       n_fields = 0;
+               }
+
+(NF == 2) {            # enters a field in the node file
+                       if (($2 == "v") || (PROCS && ($2 == "p"))) {
+                               Field[name,n_fields] = $2 ": " $1;
+                               Field[name,$1] = n_fields;
+                               n_fields++;
+                       }
+               }
+
+(NF == 6) {            # an entry in the edge file. example:
+                               # v BinaryNode left t - Tree
+                       kind = $1;
+                       if ((kind == "v") || (PROCS && (kind == "p"))) {
+                               if (($2 != "-") && ($2 != $3))
+                                       from = "\"" $2 "\".f0_1_" Field[$2,$3];
+                               else from = "\"" $3 "\"";
+
+                               if (($5 != "-") && ($5 != $6))
+                                       to = "\"" $5 "\".f0_1_" Field[$5,$6];
+                               else to = "\"" $6 "\"";
+
+                               printf("\t%s -> %s;\n",from, to);
+                       }
+               }
+
+END    {
+                       for (i in Name) {
+                               name = Name[i];
+                               printf("\t\"%s\" [label=\"{%s{",name,name);
+                               for (j = 0; Field[name,j] != ""; j++) {
+                                       if (j > 0) printf("|");
+                                       printf("%s",Field[name,j]);
+                               }
+                               printf("}}\"];\n");
+                       }
+                       printf("}\n");
+               }
diff --git a/graphs/.cvsignore b/graphs/.cvsignore
new file mode 100644 (file)
index 0000000..9fb9857
--- /dev/null
@@ -0,0 +1,6 @@
+*.la
+*.lo
+.deps
+.libs
+Makefile
+Makefile.in
diff --git a/graphs/Makefile.am b/graphs/Makefile.am
new file mode 100644 (file)
index 0000000..4c7a79e
--- /dev/null
@@ -0,0 +1,3 @@
+## Process this file with automake to produce Makefile.in
+
+SUBDIRS = directed undirected
diff --git a/graphs/directed/.cvsignore b/graphs/directed/.cvsignore
new file mode 100644 (file)
index 0000000..58ec2e6
--- /dev/null
@@ -0,0 +1,9 @@
+*.la
+*.lo
+.deps
+.libs
+.xvpics
+Makefile
+Makefile.in
+*.dot.*
+node*.png
diff --git a/graphs/directed/KW91.dot b/graphs/directed/KW91.dot
new file mode 100644 (file)
index 0000000..6c84048
--- /dev/null
@@ -0,0 +1,20 @@
+digraph G {
+       style=bold;
+       subgraph cluster_outer {
+               Act_1 -> Act_21;
+               Act_1 -> Act_23;
+               Act_25 -> Act_3;
+               subgraph cluster_inner {
+                       label = "                          Act_2";
+                       {Act_21 -> Act_22 [minlen=2]; rank=same;}
+                       Act_22 -> Act_23;
+                       Act_22 -> Act_24;
+                       {Act_23 -> Act_24 [minlen=2]; rank=same;}
+                       Act_23 -> Act_25;
+                       Act_24 -> Act_25;
+               }
+       }
+       Ext_1 -> Act_1;
+       Act_3 -> Ext_2;
+       Ext_3 -> Act_24;
+}
diff --git a/graphs/directed/Latin1.dot b/graphs/directed/Latin1.dot
new file mode 100644 (file)
index 0000000..0223029
--- /dev/null
@@ -0,0 +1,4 @@
+digraph G {
+node [fontsize=10]
+a [label = "áâãäåæçèéêëìíîïðñòóôõöøùúûü"];
+}
diff --git a/graphs/directed/Makefile.am b/graphs/directed/Makefile.am
new file mode 100644 (file)
index 0000000..492cffe
--- /dev/null
@@ -0,0 +1,166 @@
+## Process this file with automake to produce Makefile.in
+
+GRAPHS = KW91.dot Latin1.dot NaN.dot abstract.dot alf.dot arrows.dot \
+       awilliams.dot clust.dot clust1.dot clust2.dot clust3.dot clust4.dot \
+       clust5.dot crazy.dot ctext.dot dfa.dot fig6.dot fsm.dot \
+       grammar.dot hashtable.dot honda-tokoro.dot jcctree.dot jsort.dot \
+       ldbxtried.dot longflat.dot mike.dot nhg.dot oldarrows.dot \
+       pgram.dot pm2way.dot pmpipe.dot polypoly.dot proc3d.dot \
+       record2.dot records.dot rowe.dot sdh.dot shells.dot states.dot \
+       structs.dot table.dot train11.dot trapeziumlr.dot tree.dot triedds.dot \
+       try.dot unix.dot unix2.dot viewfile.dot world.dot switch.dot
+
+graphdir = $(pkgdatadir)/graphs
+directeddir = $(graphdir)/directed
+directed_DATA = $(GRAPHS)
+
+EXTRA_DIST = $(GRAPHS)
+
+CLEANFILES = core *.dot.* *.png .xvpics/* 
+
+test:
+       for i in $(GRAPHS); do \
+               echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot \
+                       -Tcanon -o$$i.canon \
+                       -Tcmap -o$$i.cmap \
+                       -Tcmapx -o$$i.cmapx \
+                       -Tdia -o$$i.dia \
+                       -Tdot -o$$i.dot \
+                       -Tfig -o$$i.fig \
+                       -Tgd -o$$i.gd \
+                       -Tgd2 -o$$i.gd2 \
+                       -Tgif -o$$i.gif \
+                       -Thpgl -o$$i.hpgl \
+                       -Tismap -o$$i.ismap \
+                       -Timap -o$$i.imap \
+                       -Tjpg -o$$i.jpg \
+                       -Tmif -o$$i.mif \
+                       -Tmp -o$$i.mp \
+                       -Tpcl -o$$i.pcl \
+                       -Tpic -o$$i.pic \
+                       -Tplain -o$$i.plain \
+                       -Tplain-ext -o$$i.plain-ext \
+                       -Tpng -o$$i.png \
+                       -Tps -o$$i.ps \
+                       -Tps2 -o$$i.ps2 \
+                       -Tsvg -o$$i.svg \
+                       -Tsvgz -o$$i.svgz \
+                       -Twbmp -o$$i.wbmp \
+                       -Tvrml -o$$i.vrml \
+                       -Tvtx -o$$i.vtx \
+                       -Txdot -o$$i.xdot \
+                               $(top_srcdir)/graphs/directed/$$i; \
+       done
+
+canon:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tcanon -o$$i.canon $(top_srcdir)/graphs/directed/$$i; done
+
+cmap:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tcmap -o$$i.cmap $(top_srcdir)/graphs/directed/$$i; done
+
+cmapx:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tcmapx -o$$i.cmapx $(top_srcdir)/graphs/directed/$$i; done
+
+dia:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tdia -o$$i.dia $(top_srcdir)/graphs/directed/$$i; done
+
+dot:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tdot -o$$i.dot $(top_srcdir)/graphs/directed/$$i; done
+
+fig:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tfig -o$$i.fig $(top_srcdir)/graphs/directed/$$i; done
+
+gd:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tgd -o$$i.gd $(top_srcdir)/graphs/directed/$$i; done
+
+gd2:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tgd2 -o$$i.gd2 $(top_srcdir)/graphs/directed/$$i; done
+
+gif:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tgif -o$$i.gif $(top_srcdir)/graphs/directed/$$i; done
+
+hpgl:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Thpgl -o$$i.hpgl $(top_srcdir)/graphs/directed/$$i; done
+
+ismap:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tismap -o$$i.ismap $(top_srcdir)/graphs/directed/$$i; done
+
+imap:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Timap -o$$i.imap $(top_srcdir)/graphs/directed/$$i; done
+
+jpg:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tjpg -o$$i.jpg $(top_srcdir)/graphs/directed/$$i; done
+
+mif:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tmif -o$$i.mif $(top_srcdir)/graphs/directed/$$i; done
+
+mp:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tmp -o$$i.mp $(top_srcdir)/graphs/directed/$$i; done
+
+pcl:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tpcl -o$$i.pcl $(top_srcdir)/graphs/directed/$$i; done
+
+pic:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tpic -o$$i.pic $(top_srcdir)/graphs/directed/$$i; done
+
+plain:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tplain -o$$i.plain $(top_srcdir)/graphs/directed/$$i; done
+
+plain-ext:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tplain-ext -o$$i.plain-ext $(top_srcdir)/graphs/directed/$$i; done
+
+png:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tpng -o$$i.png $(top_srcdir)/graphs/directed/$$i; done
+
+ps:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tps -o$$i.ps $(top_srcdir)/graphs/directed/$$i; done
+
+ps2:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tps2 -o$$i.ps2 $(top_srcdir)/graphs/directed/$$i; done
+
+svg:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tsvg -o$$i.svg $(top_srcdir)/graphs/directed/$$i; done
+
+svgz:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tsvgz -o$$i.svgz $(top_srcdir)/graphs/directed/$$i; done
+
+wbmp:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Twbmp -o$$i.wbmp $(top_srcdir)/graphs/directed/$$i; done
+
+vrml:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tvrml -o$$i.vrml $(top_srcdir)/graphs/directed/$$i; done
+
+vtx:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Tvtx -o$$i.vtx $(top_srcdir)/graphs/directed/$$i; done
+
+xdot:
+       for i in $(GRAPHS); do echo "dot $$i"; \
+               $(top_builddir)/dotneato/dot -Txdot -o$$i.xdot $(top_srcdir)/graphs/directed/$$i; done
diff --git a/graphs/directed/NaN.dot b/graphs/directed/NaN.dot
new file mode 100644 (file)
index 0000000..200540c
--- /dev/null
@@ -0,0 +1,126 @@
+digraph xyz {
+orientation=landscape;
+ratio=compress;
+size="16,10";
+AbstractMemory -> Memory;
+AliasedMemory -> AliasedMemory;
+AliasedMemory -> Memory;
+Architecture -> ROOT;
+Assembly -> ROOT;
+AtomProperties -> NRAtom;
+AtomWr -> Wr;
+Break -> Break;
+Break -> Target;
+Breakpoint -> Breakpoint;
+Breakpoint -> Event;
+Breakpoint -> ROOT;
+CDB -> Target;
+CDB -> Thread;
+CommonFrame -> Target;
+ControlOps -> InterpF;
+Displayed -> Displayed;
+Displayed -> InterpTypes;
+ETimer -> RTHeapRep;
+Event -> Event;
+Event -> ROOT;
+Event -> Target;
+EventHandler -> ROOT;
+EventHandler -> StandardEvents;
+Expression -> ROOT;
+ExpressionServer -> Expression;
+FollowBreakpoint -> Breakpoint;
+Formatter -> ROOT;
+Formatter -> Thread;
+Frame -> Frame;
+Frame -> Memory;
+Frame -> Target;
+FrameClass -> Frame;
+IntIntTbl -> IntIntTbl;
+IntIntTbl -> ROOT;
+Interp -> InterpF;
+Interp -> ROOT;
+InterpF -> Interp;
+InterpF -> InterpF;
+InterpF -> ROOT;
+InterpScan -> TokenStream;
+InterpTypes -> InterpTypes;
+InterpTypes -> ROOT;
+List -> Thread;
+LoadState -> LoadState;
+LoadState -> LoadStateRep;
+LoadState -> ROOT;
+LoadStateRep -> LoadState;
+LocationRep -> Memory;
+MC68Frame -> CommonFrame;
+MC68GCommonFrame -> EventHandler;
+MUTEX  -> ROOT;
+Memory -> Displayed;
+Memory -> InterpTypes;
+MipsFrame -> CommonFrame;
+MipsFrame -> InterpTypes;
+MipsGCommonFrame -> EventHandler;
+NRAtom -> AtomProperties;
+NRAtom -> ROOT;
+NopBreakpoint -> Breakpoint;
+PSFormatter -> InterpTypes;
+PSInterp -> InterpTypes;
+PSLoadState -> InterpTypes;
+PSMemory -> InterpTypes;
+ProtectedWire -> ProtectedWire;
+ProtectedWire -> Wire;
+RTHeap -> RTHeapRep;
+RTHeapRep -> ROOT;
+Rd -> RdClass;
+RdClass -> MUTEX;
+RegisterMemory -> Memory;
+Scope -> ROOT;
+Scope -> Scope;
+Scope -> Target;
+SourceLoc -> Target;
+SourceMap -> ROOT;
+SparcFrame -> CommonFrame;
+SparcGCommonFrame -> EventHandler;
+StandardEvents -> StandardEvents;
+StandardEvents -> Target;
+StreamWire -> Wire;
+Symbol -> Displayed;
+Symbol -> Symbol;
+TThread -> ROOT;
+TThread -> Target;
+Target -> Displayed;
+Target -> Event;
+Target -> FrameClass;
+Target -> ROOT;
+Target -> TThread;
+Target -> Target;
+Target -> TargetF;
+Target -> Thread;
+TargetF -> Target;
+TargetState -> Assembly;
+TextRd -> Rd;
+TextWr -> Wr;
+Thread -> ROOT;
+Thread -> Thread;
+TokenStream -> ROOT;
+TokenStream -> TokenStream;
+Trap -> ROOT;
+TrapMemory -> Memory;
+UFileRd -> Rd;
+UFileRd -> UFileRd;
+UFileWr -> UFileWr;
+UFileWr -> Wr;
+UnixHandler -> Event;
+UnixHandler -> UnixHandler;
+UserBreak -> Break;
+UserBreak -> Breakpoint;
+UserBreak -> Event;
+UserBreak -> Trap;
+UserBreak -> UserBreak;
+VaxFrame -> CommonFrame;
+VaxGCommonFrame -> EventHandler;
+Wire -> ROOT;
+Wire -> TrapMemory;
+Wire -> Wire;
+Wr -> WrClass;
+WrClass -> MUTEX;
+}
diff --git a/graphs/directed/abstract.dot b/graphs/directed/abstract.dot
new file mode 100644 (file)
index 0000000..08955e1
--- /dev/null
@@ -0,0 +1,71 @@
+digraph abstract {
+       size="6,6";
+       S24 -> 27;
+       S24 -> 25;
+       S1 -> 10;
+       S1 -> 2;
+       S35 -> 36;
+       S35 -> 43;
+       S30 -> 31;
+       S30 -> 33;
+       9 -> 42;
+       9 -> T1;
+       25 -> T1;
+       25 -> 26;
+       27 -> T24;
+       2 -> 3;
+       2 -> 16;
+       2 -> 17;
+       2 -> T1;
+       2 -> 18;
+       10 -> 11;
+       10 -> 14;
+       10 -> T1;
+       10 -> 13;
+       10 -> 12;
+       31 -> T1;
+       31 -> 32;
+       33 -> T30;
+       33 -> 34;
+       42 -> 4;
+       26 -> 4;
+       3 -> 4;
+       16 -> 15;
+       17 -> 19;
+       18 -> 29;
+       11 -> 4;
+       14 -> 15;
+       37 -> 39;
+       37 -> 41;
+       37 -> 38;
+       37 -> 40;
+       13 -> 19;
+       12 -> 29;
+       43 -> 38;
+       43 -> 40;
+       36 -> 19;
+       32 -> 23;
+       34 -> 29;
+       39 -> 15;
+       41 -> 29;
+       38 -> 4;
+       40 -> 19;
+       4 -> 5;
+       19 -> 21;
+       19 -> 20;
+       19 -> 28;
+       5 -> 6;
+       5 -> T35;
+       5 -> 23;
+       21 -> 22;
+       20 -> 15;
+       28 -> 29;
+       6 -> 7;
+       15 -> T1;
+       22 -> 23;
+       22 -> T35;
+       29 -> T30;
+       7 -> T8;
+       23 -> T24;
+       23 -> T1;
+}
diff --git a/graphs/directed/alf.dot b/graphs/directed/alf.dot
new file mode 100644 (file)
index 0000000..cf58f43
--- /dev/null
@@ -0,0 +1,32 @@
+digraph Alf {
+size = "6,9";
+node [ shape = record ];
+Decl [ label = "\n\nDecl|{name|access|decl_flags|extern_c_linkage}"];
+Nontype_decl [ label = "Nontype_decl|{type}"];
+Defined_decl [ label = "Defined_decl|{linkage}"];
+Data_decl [ label = "Data_decl|{storage_class}"];
+Function_decl [ label = "Function_decl|{formals|defaults}"];
+Data [ label = "Data|{initializer}"];
+Function [ label = "Function|{body}"];
+Constructor [ label = "Constructor|{member_initializers}"];
+Aggregate ->  Type_decl ;
+Class -> Aggregate;
+Union -> Aggregate;
+Data -> Data_decl;
+Data -> Defn;
+Data_decl -> Defined_decl;
+Data_member ->  Nontype_decl ;
+Defined_decl -> Nontype_decl;
+Defn -> Defined_decl;
+Enum ->  Type_decl ;
+Enumerator ->  Nontype_decl ;
+Function -> Defn;
+Function -> Function_decl;
+Constructor -> Function;
+Destructor -> Function;
+Function_decl -> Defined_decl;
+Nontype_decl ->  Decl ;
+Template_type_arg ->  Type_decl ;
+Type_decl ->  Decl ;
+Typedef ->  Type_decl ;
+}
diff --git a/graphs/directed/arrows.dot b/graphs/directed/arrows.dot
new file mode 100644 (file)
index 0000000..e84b04a
--- /dev/null
@@ -0,0 +1,77 @@
+digraph G {
+       graph [rankdir=LR nodesep=0]
+       node [shape=point label=""]
+       edge [fontsize=10]
+       _box -> box [arrowhead=box label=box]
+       box -> boxbox [arrowhead=boxbox label=boxbox]
+       _box -> lbox [arrowhead=lbox label=lbox]
+       lbox -> lboxlbox [arrowhead=lboxlbox label=lboxlbox]
+       _box -> rbox [arrowhead=rbox label=rbox]
+       rbox -> rboxrbox [arrowhead=rboxrbox label=rboxrbox]
+       _box -> olbox [arrowhead=olbox label=olbox]
+       olbox -> olboxolbox [arrowhead=olboxolbox label=olboxolbox]
+       _box -> orbox [arrowhead=orbox label=orbox]
+       orbox -> orboxorbox [arrowhead=orboxorbox label=orboxorbox]
+       _box -> obox [arrowhead=obox label=obox]
+       obox -> oboxobox [arrowhead=oboxobox label=oboxobox]
+       _crow -> crow [arrowhead=crow label=crow]
+       crow -> crowcrow [arrowhead=crowcrow label=crowcrow]
+       _crow -> lcrow [arrowhead=lcrow label=lcrow]
+       lcrow -> lcrowlcrow [arrowhead=lcrowlcrow label=lcrowlcrow]
+       _crow -> rcrow [arrowhead=rcrow label=rcrow]
+       rcrow -> rcrowrcrow [arrowhead=rcrowrcrow label=rcrowrcrow]
+       _diamond -> diamond [arrowhead=diamond label=diamond]
+       diamond -> diamonddiamond [arrowhead=diamonddiamond label=diamonddiamond]
+       _diamond -> ldiamond [arrowhead=ldiamond label=ldiamond]
+       ldiamond -> ldiamondldiamond [arrowhead=ldiamondldiamond label=ldiamondldiamond]
+       _diamond -> rdiamond [arrowhead=rdiamond label=rdiamond]
+       rdiamond -> rdiamondrdiamond [arrowhead=rdiamondrdiamond label=rdiamondrdiamond]
+       _diamond -> oldiamond [arrowhead=oldiamond label=oldiamond]
+       oldiamond -> oldiamondoldiamond [arrowhead=oldiamondoldiamond label=oldiamondoldiamond]
+       _diamond -> ordiamond [arrowhead=ordiamond label=ordiamond]
+       ordiamond -> ordiamondordiamond [arrowhead=ordiamondordiamond label=ordiamondordiamond]
+       _diamond -> odiamond [arrowhead=odiamond label=odiamond]
+       odiamond -> odiamondodiamond [arrowhead=odiamondodiamond label=odiamondodiamond]
+       _dot -> dot [arrowhead=dot label=dot]
+       dot -> dotdot [arrowhead=dotdot label=dotdot]
+       _dot -> odot [arrowhead=odot label=odot]
+       odot -> odotodot [arrowhead=odotodot label=odotodot]
+       _inv -> inv [arrowhead=inv label=inv]
+       inv -> invinv [arrowhead=invinv label=invinv]
+       _inv -> linv [arrowhead=linv label=linv]
+       linv -> linvlinv [arrowhead=linvlinv label=linvlinv]
+       _inv -> rinv [arrowhead=rinv label=rinv]
+       rinv -> rinvrinv [arrowhead=rinvrinv label=rinvrinv]
+       _inv -> olinv [arrowhead=olinv label=olinv]
+       olinv -> olinvolinv [arrowhead=olinvolinv label=olinvolinv]
+       _inv -> orinv [arrowhead=orinv label=orinv]
+       orinv -> orinvorinv [arrowhead=orinvorinv label=orinvorinv]
+       _inv -> oinv [arrowhead=oinv label=oinv]
+       oinv -> oinvoinv [arrowhead=oinvoinv label=oinvoinv]
+       _none -> none [arrowhead=none label=none]
+       none -> nonenone [arrowhead=nonenone label=nonenone]
+       _normal -> normal [arrowhead=normal label=normal]
+       normal -> normalnormal [arrowhead=normalnormal label=normalnormal]
+       _normal -> lnormal [arrowhead=lnormal label=lnormal]
+       lnormal -> lnormallnormal [arrowhead=lnormallnormal label=lnormallnormal]
+       _normal -> rnormal [arrowhead=rnormal label=rnormal]
+       rnormal -> rnormalrnormal [arrowhead=rnormalrnormal label=rnormalrnormal]
+       _normal -> olnormal [arrowhead=olnormal label=olnormal]
+       olnormal -> olnormalolnormal [arrowhead=olnormalolnormal label=olnormalolnormal]
+       _normal -> ornormal [arrowhead=ornormal label=ornormal]
+       ornormal -> ornormalornormal [arrowhead=ornormalornormal label=ornormalornormal]
+       _normal -> onormal [arrowhead=onormal label=onormal]
+       onormal -> onormalonormal [arrowhead=onormalonormal label=onormalonormal]
+       _tee -> tee [arrowhead=tee label=tee]
+       tee -> teetee [arrowhead=teetee label=teetee]
+       _tee -> ltee [arrowhead=ltee label=ltee]
+       ltee -> lteeltee [arrowhead=lteeltee label=lteeltee]
+       _tee -> rtee [arrowhead=rtee label=rtee]
+       rtee -> rteertee [arrowhead=rteertee label=rteertee]
+       _vee -> vee [arrowhead=vee label=vee]
+       vee -> veevee [arrowhead=veevee label=veevee]
+       _vee -> lvee [arrowhead=lvee label=lvee]
+       lvee -> lveelvee [arrowhead=lveelvee label=lveelvee]
+       _vee -> rvee [arrowhead=rvee label=rvee]
+       rvee -> rveervee [arrowhead=rveervee label=rveervee]
+}
diff --git a/graphs/directed/awilliams.dot b/graphs/directed/awilliams.dot
new file mode 100644 (file)
index 0000000..7f01a14
--- /dev/null
@@ -0,0 +1,188 @@
+digraph pvn {
+       ordering=out;
+
+       node_1 -> node_2;
+       node_1 [label="ID: 1\ntype: 48\nnbr out: 0\nnbr chi: 11"];
+       node_2 [label="ID: 2\ntype: 8\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_3;
+       node_3 [label="ID: 3\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_4;
+       node_4 [label="ID: 4\ntype: 6\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_5;
+       node_5 [label="ID: 5\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_6;
+       node_6 [label="ID: 6\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_7;
+       node_7 [label="ID: 7\ntype: 49\nnbr out: 0\nnbr chi: 0"];
+       node_7 -> node_8;
+       node_8 [label="ID: 8\ntype: 45\nnbr out: 2\nnbr chi: 0"];
+       node_8 -> node_9;
+       node_9 [label="ID: 9\ntype: 48\nnbr out: 0\nnbr chi: 4"];
+       node_9 -> node_10;
+       node_10 [label="ID: 10\ntype: 8\nnbr out: 0\nnbr chi: 0"];
+       node_9 -> node_11;
+       node_11 [label="ID: 11\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_9 -> node_12;
+       node_12 [label="ID: 12\ntype: 5\nnbr out: 0\nnbr chi: 0"];
+       node_9 -> node_13;
+       node_13 [label="ID: 13\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_8 -> node_14;
+       node_14 [label="ID: 14\ntype: 39\nnbr out: 1\nnbr chi: 0"];
+       node_14 -> node_15;
+       node_15 [label="ID: 15\ntype: 55\nnbr out: 0\nnbr chi: 0"];
+       node_15 -> node_16;
+       node_16 [label="ID: 16\ntype: 48\nnbr out: 0\nnbr chi: 3"];
+       node_16 -> node_17;
+       node_17 [label="ID: 17\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_16 -> node_18;
+       node_18 [label="ID: 18\ntype: 6\nnbr out: 0\nnbr chi: 0"];
+       node_16 -> node_19;
+       node_19 [label="ID: 19\ntype: 45\nnbr out: 1\nnbr chi: 0"];
+       node_19 -> node_20;
+       node_20 [label="ID: 20\ntype: 48\nnbr out: 0\nnbr chi: 5"];
+       node_20 -> node_21;
+       node_21 [label="ID: 21\ntype: 38\nnbr out: 0\nnbr chi: 0"];
+       node_20 -> node_22;
+       node_22 [label="ID: 22\ntype: 8\nnbr out: 0\nnbr chi: 0"];
+       node_20 -> node_23;
+       node_23 [label="ID: 23\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_20 -> node_24;
+       node_24 [label="ID: 24\ntype: 5\nnbr out: 0\nnbr chi: 0"];
+       node_20 -> node_25;
+       node_25 [label="ID: 25\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_19 -> node_26;
+       node_26 [label="ID: 26\ntype: 41\nnbr out: 12\nnbr chi: 0"];
+       node_26 -> node_27;
+       node_27 [label="ID: 27\ntype: 48\nnbr out: 0\nnbr chi: 5"];
+       node_27 -> node_28;
+       node_28 [label="ID: 28\ntype: 38\nnbr out: 0\nnbr chi: 0"];
+       node_27 -> node_29;
+       node_29 [label="ID: 29\ntype: 8\nnbr out: 0\nnbr chi: 0"];
+       node_27 -> node_30;
+       node_30 [label="ID: 30\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_27 -> node_31;
+       node_31 [label="ID: 31\ntype: 5\nnbr out: 0\nnbr chi: 0"];
+       node_27 -> node_32;
+       node_32 [label="ID: 32\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_27;
+       node_26 -> node_33;
+       node_33 [label="ID: 33\ntype: 48\nnbr out: 0\nnbr chi: 5"];
+       node_33 -> node_34;
+       node_34 [label="ID: 34\ntype: 38\nnbr out: 0\nnbr chi: 0"];
+       node_33 -> node_35;
+       node_35 [label="ID: 35\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_33 -> node_36;
+       node_36 [label="ID: 36\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_33 -> node_37;
+       node_37 [label="ID: 37\ntype: 20\nnbr out: 0\nnbr chi: 0"];
+       node_33 -> node_38;
+       node_38 [label="ID: 38\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_15 -> node_39;
+       node_39 [label="ID: 39\ntype: 45\nnbr out: 1\nnbr chi: 0"];
+       node_39 -> node_40;
+       node_40 [label="ID: 40\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_39 -> node_41;
+       node_41 [label="ID: 41\ntype: 48\nnbr out: 0\nnbr chi: 3"];
+       node_41 -> node_42;
+       node_42 [label="ID: 42\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_41 -> node_43;
+       node_43 [label="ID: 43\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_41 -> node_44;
+       node_44 [label="ID: 44\ntype: 6\nnbr out: 0\nnbr chi: 0"];
+       node_15 -> node_45;
+       node_45 [label="ID: 45\ntype: 48\nnbr out: 0\nnbr chi: 4"];
+       node_45 -> node_46;
+       node_46 [label="ID: 46\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_45 -> node_47;
+       node_47 [label="ID: 47\ntype: 45\nnbr out: 1\nnbr chi: 0"];
+       node_47 -> node_48;
+       node_48 [label="ID: 48\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_47 -> node_49;
+       node_49 [label="ID: 49\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_45 -> node_50;
+       node_50 [label="ID: 50\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_45 -> node_51;
+       node_51 [label="ID: 51\ntype: 45\nnbr out: 1\nnbr chi: 0"];
+       node_51 -> node_52;
+       node_52 [label="ID: 52\ntype: 45\nnbr out: 1\nnbr chi: 0"];
+       node_52 -> node_53;
+       node_53 [label="ID: 53\ntype: 54\nnbr out: 0\nnbr chi: 0"];
+       node_52 -> node_54;
+       node_54 [label="ID: 54\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_51 -> node_55;
+       node_55 [label="ID: 55\ntype: 48\nnbr out: 0\nnbr chi: 3"];
+       node_55 -> node_56;
+       node_56 [label="ID: 56\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_55 -> node_57;
+       node_57 [label="ID: 57\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_55 -> node_58;
+       node_58 [label="ID: 58\ntype: 6\nnbr out: 0\nnbr chi: 0"];
+       node_15 -> node_59;
+       node_59 [label="ID: 59\ntype: 48\nnbr out: 0\nnbr chi: 5"];
+       node_59 -> node_60;
+       node_60 [label="ID: 60\ntype: 38\nnbr out: 0\nnbr chi: 0"];
+       node_59 -> node_61;
+       node_61 [label="ID: 61\ntype: 8\nnbr out: 0\nnbr chi: 0"];
+       node_59 -> node_62;
+       node_62 [label="ID: 62\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_59 -> node_63;
+       node_63 [label="ID: 63\ntype: 5\nnbr out: 0\nnbr chi: 0"];
+       node_59 -> node_64;
+       node_64 [label="ID: 64\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_15 -> node_65;
+       node_65 [label="ID: 65\ntype: 48\nnbr out: 0\nnbr chi: 5"];
+       node_65 -> node_66;
+       node_66 [label="ID: 66\ntype: 38\nnbr out: 0\nnbr chi: 0"];
+       node_65 -> node_67;
+       node_67 [label="ID: 67\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_65 -> node_68;
+       node_68 [label="ID: 68\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_65 -> node_69;
+       node_69 [label="ID: 69\ntype: 20\nnbr out: 0\nnbr chi: 0"];
+       node_65 -> node_70;
+       node_70 [label="ID: 70\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_14 -> node_71;
+       node_71 [label="ID: 71\ntype: 45\nnbr out: 1\nnbr chi: 0"];
+       node_71 -> node_72;
+       node_72 [label="ID: 72\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_71 -> node_73;
+       node_73 [label="ID: 73\ntype: 48\nnbr out: 0\nnbr chi: 3"];
+       node_73 -> node_74;
+       node_74 [label="ID: 74\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_73 -> node_75;
+       node_75 [label="ID: 75\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_73 -> node_76;
+       node_76 [label="ID: 76\ntype: 6\nnbr out: 0\nnbr chi: 0"];
+       node_8 -> node_77;
+       node_77 [label="ID: 77\ntype: 45\nnbr out: 1\nnbr chi: 0"];
+       node_77 -> node_78;
+       node_78 [label="ID: 78\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+       node_77 -> node_79;
+       node_79 [label="ID: 79\ntype: 48\nnbr out: 0\nnbr chi: 3"];
+       node_79 -> node_80;
+       node_80 [label="ID: 80\ntype: 14\nnbr out: 0\nnbr chi: 0"];
+       node_79 -> node_81;
+       node_81 [label="ID: 81\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_79 -> node_82;
+       node_82 [label="ID: 82\ntype: 6\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_83;
+       node_83 [label="ID: 83\ntype: 38\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_84;
+       node_84 [label="ID: 84\ntype: 8\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_85;
+       node_85 [label="ID: 85\ntype: 1\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_86;
+       node_86 [label="ID: 86\ntype: 5\nnbr out: 0\nnbr chi: 0"];
+       node_1 -> node_87;
+       node_87 [label="ID: 87\ntype: 16\nnbr out: 0\nnbr chi: 0"];
+}
diff --git a/graphs/directed/clust.dot b/graphs/directed/clust.dot
new file mode 100644 (file)
index 0000000..f944b86
--- /dev/null
@@ -0,0 +1,22 @@
+digraph G {
+       subgraph cluster_0 {
+               label = "hello world";
+               a -> b;
+               a -> c;
+               color = hot_pink;
+       }
+
+       subgraph cluster_1 {
+               label = "MSDOT";
+               style= "dashed";
+               color=purple;
+               x -> y;
+               x -> z;
+               y -> z;
+               y -> q;
+       }
+
+       top -> a;
+       top -> y;
+       y -> b;
+}
diff --git a/graphs/directed/clust1.dot b/graphs/directed/clust1.dot
new file mode 100644 (file)
index 0000000..71c4722
--- /dev/null
@@ -0,0 +1,8 @@
+digraph G {
+       subgraph cluster_c0 {a0 -> a1 -> a2 -> a3;}
+       subgraph cluster_c1 {b0 -> b1 -> b2 -> b3;}
+       x -> a0;
+       x -> b0;
+       a1 -> a3;
+       a3 -> a0;
+}
diff --git a/graphs/directed/clust2.dot b/graphs/directed/clust2.dot
new file mode 100644 (file)
index 0000000..27cc588
--- /dev/null
@@ -0,0 +1,8 @@
+digraph G {
+       subgraph cluster_c0 {a0 -> a1 -> a2 -> a3;}
+       subgraph cluster_c1 {b0 -> b1 -> b2 -> b3;}
+       x -> a0;
+       x -> b0;
+       a1 -> b3;
+       b3 -> a1;
+}
diff --git a/graphs/directed/clust3.dot b/graphs/directed/clust3.dot
new file mode 100644 (file)
index 0000000..6efae42
--- /dev/null
@@ -0,0 +1,8 @@
+digraph G {
+       subgraph cluster_c0 {a0 -> a1 -> a2 -> a3;}
+       subgraph cluster_c1 {b0 -> b1 -> b2 -> b3;}
+       x -> a0;
+       x -> b0;
+       a1 -> b3;
+       b1 -> a3;
+}
diff --git a/graphs/directed/clust4.dot b/graphs/directed/clust4.dot
new file mode 100644 (file)
index 0000000..67dcd4c
--- /dev/null
@@ -0,0 +1,27 @@
+digraph G {
+
+       subgraph cluster_0 {
+               style=filled;
+               color=lightgrey;
+               node [style=filled,color=white];
+               a0 -> a1 -> a2 -> a3;
+               label = "process #1";
+       }
+
+       subgraph cluster_1 {
+               node [style=filled];
+               b0 -> b1 -> b2 -> b3;
+               label = "process #2";
+               color=blue
+       }
+       start -> a0;
+       start -> b0;
+       a1 -> b3;
+       b2 -> a3;
+       a3 -> a0;
+       a3 -> end;
+       b3 -> end;
+
+       start [shape=Mdiamond];
+       end [shape=Msquare];
+}
diff --git a/graphs/directed/clust5.dot b/graphs/directed/clust5.dot
new file mode 100644 (file)
index 0000000..5edc2ce
--- /dev/null
@@ -0,0 +1,25 @@
+digraph G {
+size="6,6";
+       a -> b -> c;
+
+       subgraph cluster0 {
+               x0 -> y0;
+               x0 -> z0;
+       }
+
+       subgraph cluster1 {
+               x1 -> y1;
+               x1 -> z1;
+       }
+
+       subgraph cluster2 {
+               x2 -> y2;
+               x2 -> z2;
+       }
+
+       a -> x0;
+       b -> x1;
+       b -> x2;
+       a -> z2;
+       c -> z1;
+}
diff --git a/graphs/directed/crazy.dot b/graphs/directed/crazy.dot
new file mode 100644 (file)
index 0000000..b51d498
--- /dev/null
@@ -0,0 +1,104 @@
+digraph "unix" {
+       graph [ fontname = "Helvetica-Oblique",
+               fontsize = 36,
+               label = "\n\n\n\nObject Oriented Graphs\nStephen North, 3/19/93",
+               size = "6,6" ];
+       node [  shape = polygon,
+               sides = 4,
+               distortion = "0.0",
+               orientation = "0.0",
+               skew = "0.0",
+               color = white,
+               style = filled,
+               fontname = "Helvetica-Outline" ];
+       "5th Edition" [sides=9, distortion="0.936354", orientation=28, skew="-0.126818", color=salmon2];
+       "6th Edition" [sides=5, distortion="0.238792", orientation=11, skew="0.995935", color=deepskyblue];
+       "PWB 1.0" [sides=8, distortion="0.019636", orientation=79, skew="-0.440424", color=goldenrod2];
+       LSX [sides=9, distortion="-0.698271", orientation=22, skew="-0.195492", color=burlywood2];
+       "1 BSD" [sides=7, distortion="0.265084", orientation=26, skew="0.403659", color=gold1];
+       "Mini Unix" [distortion="0.039386", orientation=2, skew="-0.461120", color=greenyellow];
+       Wollongong [sides=5, distortion="0.228564", orientation=63, skew="-0.062846", color=darkseagreen];
+       Interdata [distortion="0.624013", orientation=56, skew="0.101396", color=dodgerblue1];
+       "Unix/TS 3.0" [sides=8, distortion="0.731383", orientation=43, skew="-0.824612", color=thistle2];
+       "PWB 2.0" [sides=6, distortion="0.592100", orientation=34, skew="-0.719269", color=darkolivegreen3];
+       "7th Edition" [sides=10, distortion="0.298417", orientation=65, skew="0.310367", color=chocolate];
+       "8th Edition" [distortion="-0.997093", orientation=50, skew="-0.061117", color=turquoise3];
+       "32V" [sides=7, distortion="0.878516", orientation=19, skew="0.592905", color=steelblue3];
+       V7M [sides=10, distortion="-0.960249", orientation=32, skew="0.460424", color=navy];
+       "Ultrix-11" [sides=10, distortion="-0.633186", orientation=10, skew="0.333125", color=darkseagreen4];
+       Xenix [sides=8, distortion="-0.337997", orientation=52, skew="-0.760726", color=coral];
+       "UniPlus+" [sides=7, distortion="0.788483", orientation=39, skew="-0.526284", color=darkolivegreen3];
+       "9th Edition" [sides=7, distortion="0.138690", orientation=55, skew="0.554049", color=coral3];
+       "2 BSD" [sides=7, distortion="-0.010661", orientation=84, skew="0.179249", color=blanchedalmond];
+       "2.8 BSD" [distortion="-0.239422", orientation=44, skew="0.053841", color=lightskyblue1];
+       "2.9 BSD" [distortion="-0.843381", orientation=70, skew="-0.601395", color=aquamarine2];
+       "3 BSD" [sides=10, distortion="0.251820", orientation=18, skew="-0.530618", color=lemonchiffon];
+       "4 BSD" [sides=5, distortion="-0.772300", orientation=24, skew="-0.028475", color=darkorange1];
+       "4.1 BSD" [distortion="-0.226170", orientation=38, skew="0.504053", color=lightyellow1];
+       "4.2 BSD" [sides=10, distortion="-0.807349", orientation=50, skew="-0.908842", color=darkorchid4];
+       "4.3 BSD" [sides=10, distortion="-0.030619", orientation=76, skew="0.985021", color=lemonchiffon2];
+       "Ultrix-32" [distortion="-0.644209", orientation=21, skew="0.307836", color=goldenrod3];
+       "PWB 1.2" [sides=7, distortion="0.640971", orientation=84, skew="-0.768455", color=cyan];
+       "USG 1.0" [distortion="0.758942", orientation=42, skew="0.039886", color=blue];
+       "CB Unix 1" [sides=9, distortion="-0.348692", orientation=42, skew="0.767058", color=firebrick];
+       "USG 2.0" [distortion="0.748625", orientation=74, skew="-0.647656", color=chartreuse4];
+       "CB Unix 2" [sides=10, distortion="0.851818", orientation=32, skew="-0.020120", color=greenyellow];
+       "CB Unix 3" [sides=10, distortion="0.992237", orientation=29, skew="0.256102", color=bisque4];
+       "Unix/TS++" [sides=6, distortion="0.545461", orientation=16, skew="0.313589", color=mistyrose2];
+       "PDP-11 Sys V" [sides=9, distortion="-0.267769", orientation=40, skew="0.271226", color=cadetblue1];
+       "USG 3.0" [distortion="-0.848455", orientation=44, skew="0.267152", color=bisque2];
+       "Unix/TS 1.0" [distortion="0.305594", orientation=75, skew="0.070516", color=orangered];
+       "TS 4.0" [sides=10, distortion="-0.641701", orientation=50, skew="-0.952502", color=crimson];
+       "System V.0" [sides=9, distortion="0.021556", orientation=26, skew="-0.729938", color=darkorange1];
+       "System V.2" [sides=6, distortion="0.985153", orientation=33, skew="-0.399752", color=darkolivegreen4];
+       "System V.3" [sides=7, distortion="-0.687574", orientation=58, skew="-0.180116", color=lightsteelblue1];
+       "5th Edition" -> "6th Edition";
+       "5th Edition" -> "PWB 1.0";
+       "6th Edition" -> LSX;
+       "6th Edition" -> "1 BSD";
+       "6th Edition" -> "Mini Unix";
+       "6th Edition" -> Wollongong;
+       "6th Edition" -> Interdata;
+       Interdata -> "Unix/TS 3.0";
+       Interdata -> "PWB 2.0";
+       Interdata -> "7th Edition";
+       "7th Edition" -> "8th Edition";
+       "7th Edition" -> "32V";
+       "7th Edition" -> V7M;
+       "7th Edition" -> "Ultrix-11";
+       "7th Edition" -> Xenix;
+       "7th Edition" -> "UniPlus+";
+       V7M -> "Ultrix-11";
+       "8th Edition" -> "9th Edition";
+       "1 BSD" -> "2 BSD";
+       "2 BSD" -> "2.8 BSD";
+       "2.8 BSD" -> "Ultrix-11";
+       "2.8 BSD" -> "2.9 BSD";
+       "32V" -> "3 BSD";
+       "3 BSD" -> "4 BSD";
+       "4 BSD" -> "4.1 BSD";
+       "4.1 BSD" -> "4.2 BSD";
+       "4.1 BSD" -> "2.8 BSD";
+       "4.1 BSD" -> "8th Edition";
+       "4.2 BSD" -> "4.3 BSD";
+       "4.2 BSD" -> "Ultrix-32";
+       "PWB 1.0" -> "PWB 1.2";
+       "PWB 1.0" -> "USG 1.0";
+       "PWB 1.2" -> "PWB 2.0";
+       "USG 1.0" -> "CB Unix 1";
+       "USG 1.0" -> "USG 2.0";
+       "CB Unix 1" -> "CB Unix 2";
+       "CB Unix 2" -> "CB Unix 3";
+       "CB Unix 3" -> "Unix/TS++";
+       "CB Unix 3" -> "PDP-11 Sys V";
+       "USG 2.0" -> "USG 3.0";
+       "USG 3.0" -> "Unix/TS 3.0";
+       "PWB 2.0" -> "Unix/TS 3.0";
+       "Unix/TS 1.0" -> "Unix/TS 3.0";
+       "Unix/TS 3.0" -> "TS 4.0";
+       "Unix/TS++" -> "TS 4.0";
+       "CB Unix 3" -> "TS 4.0";
+       "TS 4.0" -> "System V.0";
+       "System V.0" -> "System V.2";
+       "System V.2" -> "System V.3";
+}
diff --git a/graphs/directed/ctext.dot b/graphs/directed/ctext.dot
new file mode 100644 (file)
index 0000000..cdadf49
--- /dev/null
@@ -0,0 +1,17 @@
+digraph G {
+       xyz [label = "hello\nworld",color="slate_blue",fontsize=24,fontname="Palatino-Italic",style=filled,fontcolor="hot pink"];
+       node [style=filled];
+       red [color=red];
+       green [color=green];
+       blue [color=blue,fontcolor=black];
+       cyan [color=cyan];
+       magenta [color=magenta];
+       yellow [color=yellow];
+       orange [color=orange];
+       red -> green;
+       red -> blue;
+       blue -> cyan;
+       blue -> magenta;
+       green -> yellow;
+       green -> orange;
+}
diff --git a/graphs/directed/dfa.dot b/graphs/directed/dfa.dot
new file mode 100644 (file)
index 0000000..fde0680
--- /dev/null
@@ -0,0 +1,34 @@
+digraph g {
+"start" [ label = "MWGC-" ];
+"n1" [ label = "WC-MG" ];
+"n2" [ label = "MWC-G" ];
+"n3" [ label = "C-MWG" ];
+"n4" [ label = "W-MGC" ];
+"n5" [ label = "MGC-W" ];
+"n6" [ label = "MWG-C" ];
+"n7" [ label = "G-MWC" ];
+"n8" [ label = "MG-WC" ];
+"n9" [ label = "-MWGC" ];
+"start" -> "n1" [ label = "g" ];
+"n1" -> "start" [ label = "g" ];
+subgraph l { rank = same; "n3" "n4" }
+subgraph r { rank = same; "n5" "n6" }
+"n1" -> "n2" [ label = "m" ];
+"n2" -> "n1" [ label = "m" ];
+"n2" -> "n3" [ label = "w" ];
+"n3" -> "n2" [ label = "w" ];
+"n2" -> "n4" [ label = "c" ];
+"n4" -> "n2" [ label = "c" ];
+"n3" -> "n5" [ label = "g" ];
+"n5" -> "n3" [ label = "g" ];
+"n4" -> "n6" [ label = "g" ];
+"n6" -> "n4" [ label = "g" ];
+"n5" -> "n7" [ label = "c" ];
+"n7" -> "n5" [ label = "c" ];
+"n6" -> "n7" [ label = "w" ];
+"n7" -> "n6" [ label = "w" ];
+"n7" -> "n8" [ label = "m" ];
+"n8" -> "n7" [ label = "m" ];
+"n8" -> "n9" [ label = "g" ];
+"n9" -> "n8" [ label = "g" ];
+}
diff --git a/graphs/directed/fig6.dot b/graphs/directed/fig6.dot
new file mode 100644 (file)
index 0000000..8749fd3
--- /dev/null
@@ -0,0 +1,74 @@
+digraph G {
+       size = "8,8";
+       {rank=min S8 S24 S1 S35 S30}
+       {rank=max T8 T24 T1 T35 T30}
+       S8 -> 9;
+       S24 -> 27;
+       S24 -> 25;
+       S1 -> 10;
+       S1 -> 2;
+       S35 -> 36;
+       S35 -> 43;
+       S30 -> 31;
+       S30 -> 33;
+       9 -> 42;
+       9 -> T1;
+       25 -> T1;
+       25 -> 26;
+       27 -> T24;
+       2 -> 3;
+       2 -> 16;
+       2 -> 17;
+       2 -> T1;
+       2 -> 18;
+       10 -> 11;
+       10 -> 14;
+       10 -> T1;
+       10 -> 13;
+       10 -> 12;
+       31 -> T1;
+       31 -> 32;
+       33 -> T30;
+       33 -> 34;
+       42 -> 4;
+       26 -> 4;
+       3 -> 4;
+       16 -> 15;
+       17 -> 19;
+       18 -> 29;
+       11 -> 4;
+       14 -> 15;
+       37 -> 39;
+       37 -> 41;
+       37 -> 38;
+       37 -> 40;
+       13 -> 19;
+       12 -> 29;
+       43 -> 38;
+       43 -> 40;
+       36 -> 19;
+       32 -> 23;
+       34 -> 29;
+       39 -> 15;
+       41 -> 29;
+       38 -> 4;
+       40 -> 19;
+       4 -> 5;
+       19 -> 21;
+       19 -> 20;
+       19 -> 28;
+       5 -> 6;
+       5 -> T35;
+       5 -> 23;
+       21 -> 22;
+       20 -> 15;
+       28 -> 29;
+       6 -> 7;
+       15 -> T1;
+       22 -> 23;
+       22 -> T35;
+       29 -> T30;
+       7 -> T8;
+       23 -> T24;
+       23 -> T1;
+}
diff --git a/graphs/directed/fsm.dot b/graphs/directed/fsm.dot
new file mode 100644 (file)
index 0000000..9243e5a
--- /dev/null
@@ -0,0 +1,20 @@
+digraph finite_state_machine {
+
+       node [shape = doublecircle]; LR_0 LR_3 LR_4 LR_8;
+       node [shape = circle];
+       rankdir=LR;
+       LR_0 -> LR_2 [ label = "SS(B)" ];
+       LR_0 -> LR_1 [ label = "SS(S)" ];
+       LR_1 -> LR_3 [ label = "S($end)" ];
+       LR_2 -> LR_6 [ label = "SS(b)" ];
+       LR_2 -> LR_5 [ label = "SS(a)" ];
+       LR_2 -> LR_4 [ label = "S(A)" ];
+       LR_5 -> LR_7 [ label = "S(b)" ];
+       LR_5 -> LR_5 [ label = "S(a)" ];
+       LR_6 -> LR_6 [ label = "S(b)" ];
+       LR_6 -> LR_5 [ label = "S(a)" ];
+       LR_7 -> LR_8 [ label = "S(b)" ];
+       LR_7 -> LR_5 [ label = "S(a)" ];
+       LR_8 -> LR_6 [ label = "S(b)" ];
+       LR_8 -> LR_5 [ label = "S(a)" ];
+}
diff --git a/graphs/directed/grammar.dot b/graphs/directed/grammar.dot
new file mode 100644 (file)
index 0000000..3417211
--- /dev/null
@@ -0,0 +1,71 @@
+digraph L0 {
+       size = "8,8";
+       ordering=out;
+       node [shape = box];
+
+       n0 [label="E"];
+       n1 [label="T"];
+       n2 [label="F"];
+       n3 [label="IDENT : a "];
+       n4 [label="+"];
+       n5 [label="T"];
+       n6 [label="F"];
+       n7 [label="("];
+       n8 [label="E"];
+       n9 [label="T"];
+       n10 [label="F"];
+       n11 [label="IDENT : b "];
+       n12 [label="*"];
+       n13 [label="F"];
+       n14 [label="IDENT : c "];
+       n15 [label=")"];
+       n16 [label="*"];
+       n17 [label="F"];
+       n18 [label="("];
+       n19 [label="E"];
+       n20 [label="T"];
+       n21 [label="F"];
+       n22 [label="IDENT : d "];
+       n23 [label="*"];
+       n24 [label="F"];
+       n25 [label="IDENT : e "];
+       n26 [label="+"];
+       n27 [label="T"];
+       n28 [label="F"];
+       n29 [label="("];
+       n30 [label="E"];
+       n31 [label="T"];
+       n32 [label="F"];
+       n33 [label="IDENT : a "];
+       n34 [label="*"];
+       n35 [label="F"];
+       n36 [label="IDENT : b "];
+       n37 [label=")"];
+       n38 [label=")"];
+       n39 [label="+"];
+       n40 [label="T"];
+       n41 [label="F"];
+       n42 [label="IDENT : q "];
+       n0 ->   { n1 n4 n5 n39 n40 };
+       n1 ->   n2 ;
+       n2 ->   n3 ;
+       n5 ->   { n6 n16 n17 };
+       n6 ->   { n7 n8 n15 };
+       n8 ->   n9 ;
+       n9 ->   { n10 n12 n13 };
+       n10 ->  n11 ;
+       n13 ->  n14 ;
+       n17 ->  { n18 n19 n38 };
+       n19 ->  { n20 n26 n27 };
+       n20 ->  { n21 n23 n24 };
+       n21 ->  n22 ;
+       n24 ->  n25 ;
+       n27 ->  n28 ;
+       n28 ->  { n29 n30 n37 };
+       n30 ->  n31 ;
+       n31 ->  { n32 n34 n35 };
+       n32 ->  n33 ;
+       n35 ->  n36 ;
+       n40 ->  n41 ;
+       n41 ->  n42 ;
+}
diff --git a/graphs/directed/hashtable.dot b/graphs/directed/hashtable.dot
new file mode 100644 (file)
index 0000000..8659cb4
--- /dev/null
@@ -0,0 +1,23 @@
+digraph G {
+       nodesep=.05;
+       rankdir=LR;
+       node [shape=record,width=.1,height=.1];
+
+       node0 [label = "<f0> |<f1> |<f2> |<f3> |<f4> |<f5> |<f6> | ",height=2.0];
+       node [width = 1.5];
+       node1 [label = "{<n> n14 | 719 |<p> }"];
+       node2 [label = "{<n> a1  | 805 |<p> }"];
+       node3 [label = "{<n> i9  | 718 |<p> }"];
+       node4 [label = "{<n> e5  | 989 |<p> }"];
+       node5 [label = "{<n> t20 | 959 |<p> }"] ;
+       node6 [label = "{<n> o15 | 794 |<p> }"] ;
+       node7 [label = "{<n> s19 | 659 |<p> }"] ;
+
+       node0:f0 -> node1:n;
+       node0:f1 -> node2:n;
+       node0:f2 -> node3:n;
+       node0:f5 -> node4:n;
+       node0:f6 -> node5:n;
+       node2:p -> node6:n;
+       node4:p -> node7:n;
+}
diff --git a/graphs/directed/honda-tokoro.dot b/graphs/directed/honda-tokoro.dot
new file mode 100644 (file)
index 0000000..38dcc18
--- /dev/null
@@ -0,0 +1,76 @@
+digraph "Honda-Tokoro" {
+rankdir="LR" ranksep="0.2" edge[labelfontsize="8" fontsize="8" labeldistance="0.8" arrowsize="0.9" labelangle="-30" dir="none"] nodesep="0.2" node[width="0" height="0" fontsize="10"]
+
+/*Net net00*/
+
+n000 [label="z"]
+n001->n000 [headlabel=":s:" arrowhead="invdot"]
+n001 [label="m"]
+n002->n001 [samehead="m002" headlabel=":r:" samearrowhead="1" arrowhead="invdot" arrowtail="inv"]
+n002 [label="p1"]
+n003->n002 [headlabel=":s:" arrowhead="dot"]
+n003 [label="b"]
+n004->n003 
+n004 [label="x1"]
+n022->n004 [weight="0" headlabel=":s/r:" fontsize="8" arrowhead="invdot"]
+n003->n002 [samehead="m000" fontsize="8" samearrowhead="1" arrowtail="inv"]
+n005->n002 [samehead="m000" headlabel=":u:" fontsize="8" samearrowhead="1" arrowhead="dot" arrowtail="inv"]
+n005->n001 [samehead="m002" samearrowhead="1"]
+n005 [label="b"]
+n006->n005 [arrowtail="inv"]
+n006 [label="p2"]
+n007->n006 [headlabel=":s:" arrowhead="dot"]
+n007 [label="b"]
+n008->n007 
+n008 [label="x2"]
+n022->n008 [weight="0" headlabel=":s/r:" fontsize="8" arrowhead="invdot"]
+n007->n006 [samehead="m001" headlabel=":u:" fontsize="8" samearrowhead="1" arrowhead="dot" arrowtail="inv"]
+n009->n006 [samehead="m001" samearrowhead="1" arrowtail="inv"]
+n009 [label="b2"]
+n022->n009 [fontsize="8"]
+n022->n009 [fontsize="8"]
+n010->n006 [samehead="m001" samearrowhead="1" arrowtail="inv"]
+n010 [label="b2"]
+n022->n010 [fontsize="8"]
+n022->n010 [fontsize="8"]
+n011->n000 [headlabel=":r:" arrowhead="invdot" arrowtail="inv"]
+n011 [label="n"]
+n012->n011 [samehead="m005" headlabel=":s:" samearrowhead="1" arrowhead="dot"]
+n012 [label="b"]
+n013->n012 
+n013 [label="c1"]
+n014->n013 [headlabel=":r:" arrowhead="invdot"]
+n014 [label="b"]
+n015->n014 [arrowtail="inv"]
+n015 [label="y1"]
+n023->n015 [weight="0" headlabel=":s/r:" fontsize="8" arrowhead="dot"]
+n016->n015 [samehead="m003" headlabel=":u:" fontsize="8" samearrowhead="1" arrowhead="dot" arrowtail="inv"]
+n018->n015 [samehead="m003" fontsize="8" samearrowhead="1" arrowtail="inv"]
+n014->n011 [samehead="m006" headlabel=":u:" fontsize="8" samearrowhead="1" arrowhead="dot" arrowtail="inv"]
+n012->n011 [samehead="m006" fontsize="8" samearrowhead="1" arrowtail="inv"]
+n016->n011 [samehead="m005" samearrowhead="1"]
+n016 [label="b"]
+n017->n016 
+n017 [label="c2"]
+n018->n017 [headlabel=":r:" arrowhead="invdot"]
+n018 [label="b"]
+n019->n018 [arrowtail="inv"]
+n019 [label="y2"]
+n023->n019 [weight="0" headlabel=":s/r:" fontsize="8" arrowhead="dot"]
+n020->n019 [samehead="m004" headlabel=":u:" samearrowhead="1" arrowhead="dot" arrowtail="inv"]
+n020 [label="b2"]
+n023->n020 [fontsize="8"]
+n023->n020 [fontsize="8"]
+n021->n019 [samehead="m004" samearrowhead="1" arrowtail="inv"]
+n021 [label="b2"]
+n023->n021 [fontsize="8"]
+n023->n021 [fontsize="8"]
+n022 [width="0.5" label="[P]" shape="box" style="dashed" height="0.35"]
+n023 [width="0.5" label="[Q]" shape="box" style="dashed" height="0.35"]
+{/*L=x1*/rank=same n004 n015}
+{/*L=p1*/rank=same n002 n013}
+{/*L=b*/rank=same n009 n010 n020 n021}
+{/*L=x2*/rank=same n008 n019}
+{/*L=p2*/rank=same n006 n017}
+{/*L=m*/rank=same n001 n011}
+}
diff --git a/graphs/directed/jcctree.dot b/graphs/directed/jcctree.dot
new file mode 100644 (file)
index 0000000..9c557df
--- /dev/null
@@ -0,0 +1,44 @@
+digraph "tree" {
+// The problem disappeared when I removed the "ELEM3 -> ID5;" line!
+//size="4,5";
+ordering=out;
+node [shape=plaintext];
+SPEC -> DEF2;
+SPEC -> DEF1;
+DEF1 -> ID1;
+DEF1 -> SET1;
+DEF1 -> SC1;
+DEF2 -> ID2;
+DEF2 -> SET2;
+DEF2 -> SC2;
+SET1 -> OPEN1;
+SET1 -> ELEM1;
+SET1 -> SC3;
+SET1 -> ELEM2;
+SET1 -> CLOSE1;
+ELEM1 -> ID3;
+SET2 -> OPEN2;
+SET2 -> ELEM3;
+SET2 -> CLOSE2;
+ELEM2 -> ID4;
+ELEM3 -> ID5;
+DEF1 [label=DEF];
+DEF2 [label=DEF];
+SET1 [label=SET];
+SC1 [label=";"];
+SC3 [label=";"];
+SET2 [label=SET];
+SC2 [label=";"];
+OPEN1 [label="{"];
+OPEN2 [label="{"];
+CLOSE1 [label="}"];
+CLOSE2 [label="}"];
+ELEM1 [label=ELEMENT];
+ELEM2 [label=ELEMENT];
+ELEM3 [label=ELEMENT];
+ID1 [label=cities];
+ID2 [label=insects];
+ID3 [label=andover];
+ID4 [label=boston];
+ID5 [label=fly];
+}
diff --git a/graphs/directed/jsort.dot b/graphs/directed/jsort.dot
new file mode 100644 (file)
index 0000000..ccfc7f7
--- /dev/null
@@ -0,0 +1,150 @@
+digraph prof {
+       size="6,4"; ratio = fill;
+       node [style=filled];
+       start -> main [color="0.002 0.999 0.999"];
+       start -> on_exit [color="0.649 0.701 0.701"];
+       main -> sort [color="0.348 0.839 0.839"];
+       main -> merge [color="0.515 0.762 0.762"];
+       main -> term [color="0.647 0.702 0.702"];
+       main -> signal [color="0.650 0.700 0.700"];
+       main -> sbrk [color="0.650 0.700 0.700"];
+       main -> unlink [color="0.650 0.700 0.700"];
+       main -> newfile [color="0.650 0.700 0.700"];
+       main -> fclose [color="0.650 0.700 0.700"];
+       main -> close [color="0.650 0.700 0.700"];
+       main -> brk [color="0.650 0.700 0.700"];
+       main -> setbuf [color="0.650 0.700 0.700"];
+       main -> copyproto [color="0.650 0.700 0.700"];
+       main -> initree [color="0.650 0.700 0.700"];
+       main -> safeoutfil [color="0.650 0.700 0.700"];
+       main -> getpid [color="0.650 0.700 0.700"];
+       main -> sprintf [color="0.650 0.700 0.700"];
+       main -> creat [color="0.650 0.700 0.700"];
+       main -> rem [color="0.650 0.700 0.700"];
+       main -> oldfile [color="0.650 0.700 0.700"];
+       sort -> msort [color="0.619 0.714 0.714"];
+       sort -> filbuf [color="0.650 0.700 0.700"];
+       sort -> newfile [color="0.650 0.700 0.700"];
+       sort -> fclose [color="0.650 0.700 0.700"];
+       sort -> setbuf [color="0.650 0.700 0.700"];
+       sort -> setfil [color="0.650 0.700 0.700"];
+       msort -> qsort [color="0.650 0.700 0.700"];
+       msort -> insert [color="0.650 0.700 0.700"];
+       msort -> wline [color="0.650 0.700 0.700"];
+       msort -> div [color="0.650 0.700 0.700"];
+       msort -> cmpsave [color="0.650 0.700 0.700"];
+       merge -> insert [color="0.650 0.700 0.700"];
+       merge -> rline [color="0.650 0.700 0.700"];
+       merge -> wline [color="0.650 0.700 0.700"];
+       merge -> unlink [color="0.650 0.700 0.700"];
+       merge -> fopen [color="0.650 0.700 0.700"];
+       merge -> fclose [color="0.650 0.700 0.700"];
+       merge -> setfil [color="0.650 0.700 0.700"];
+       merge -> mul [color="0.650 0.700 0.700"];
+       merge -> setbuf [color="0.650 0.700 0.700"];
+       merge -> cmpsave [color="0.650 0.700 0.700"];
+       insert -> cmpa [color="0.650 0.700 0.700"];
+       wline -> flsbuf [color="0.649 0.700 0.700"];
+       qsort -> cmpa [color="0.650 0.700 0.700"];
+       rline -> filbuf [color="0.649 0.700 0.700"];
+       xflsbuf -> write [color="0.650 0.700 0.700"];
+       flsbuf -> xflsbuf [color="0.649 0.700 0.700"];
+       filbuf -> read [color="0.650 0.700 0.700"];
+       term -> unlink [color="0.650 0.700 0.700"];
+       term -> signal [color="0.650 0.700 0.700"];
+       term -> setfil [color="0.650 0.700 0.700"];
+       term -> exit [color="0.650 0.700 0.700"];
+       endopen -> open [color="0.650 0.700 0.700"];
+       fopen -> endopen [color="0.639 0.705 0.705"];
+       fopen -> findiop [color="0.650 0.700 0.700"];
+       newfile -> fopen [color="0.634 0.707 0.707"];
+       newfile -> setfil [color="0.650 0.700 0.700"];
+       fclose -> fflush [color="0.642 0.704 0.704"];
+       fclose -> close [color="0.650 0.700 0.700"];
+       fflush -> xflsbuf [color="0.635 0.707 0.707"];
+       malloc -> morecore [color="0.325 0.850 0.850"];
+       malloc -> demote [color="0.650 0.700 0.700"];
+       morecore -> sbrk [color="0.650 0.700 0.700"];
+       morecore -> getfreehdr [color="0.650 0.700 0.700"];
+       morecore -> free [color="0.650 0.700 0.700"];
+       morecore -> getpagesize [color="0.650 0.700 0.700"];
+       morecore -> putfreehdr [color="0.650 0.700 0.700"];
+       morecore -> udiv [color="0.650 0.700 0.700"];
+       morecore -> umul [color="0.650 0.700 0.700"];
+       on_exit -> malloc [color="0.325 0.850 0.850"];
+       signal -> sigvec [color="0.650 0.700 0.700"];
+       moncontrol -> profil [color="0.650 0.700 0.700"];
+       getfreehdr -> sbrk [color="0.650 0.700 0.700"];
+       free -> insert [color="0.650 0.700 0.700"];
+       insert -> getfreehdr [color="0.650 0.700 0.700"];
+       setfil -> div [color="0.650 0.700 0.700"];
+       setfil -> rem [color="0.650 0.700 0.700"];
+       sigvec -> sigblock [color="0.650 0.700 0.700"];
+       sigvec -> sigsetmask [color="0.650 0.700 0.700"];
+       doprnt -> urem [color="0.650 0.700 0.700"];
+       doprnt -> udiv [color="0.650 0.700 0.700"];
+       doprnt -> strlen [color="0.650 0.700 0.700"];
+       doprnt -> localeconv [color="0.650 0.700 0.700"];
+       sprintf -> doprnt [color="0.650 0.700 0.700"];
+cmpa [color="0.000 1.000 1.000"];
+wline [color="0.201 0.753 1.000"];
+insert [color="0.305 0.625 1.000"];
+rline [color="0.355 0.563 1.000"];
+sort [color="0.408 0.498 1.000"];
+qsort [color="0.449 0.447 1.000"];
+write [color="0.499 0.386 1.000"];
+read [color="0.578 0.289 1.000"];
+msort [color="0.590 0.273 1.000"];
+merge [color="0.603 0.258 1.000"];
+unlink [color="0.628 0.227 1.000"];
+filbuf [color="0.641 0.212 1.000"];
+open [color="0.641 0.212 1.000"];
+sbrk [color="0.647 0.204 1.000"];
+signal [color="0.647 0.204 1.000"];
+moncontrol [color="0.647 0.204 1.000"];
+xflsbuf [color="0.650 0.200 1.000"];
+flsbuf [color="0.650 0.200 1.000"];
+div [color="0.650 0.200 1.000"];
+cmpsave [color="0.650 0.200 1.000"];
+rem [color="0.650 0.200 1.000"];
+setfil [color="0.650 0.200 1.000"];
+close [color="0.650 0.200 1.000"];
+fclose [color="0.650 0.200 1.000"];
+fflush [color="0.650 0.200 1.000"];
+setbuf [color="0.650 0.200 1.000"];
+endopen [color="0.650 0.200 1.000"];
+findiop [color="0.650 0.200 1.000"];
+fopen [color="0.650 0.200 1.000"];
+mul [color="0.650 0.200 1.000"];
+newfile [color="0.650 0.200 1.000"];
+sigblock [color="0.650 0.200 1.000"];
+sigsetmask [color="0.650 0.200 1.000"];
+sigvec [color="0.650 0.200 1.000"];
+udiv [color="0.650 0.200 1.000"];
+urem [color="0.650 0.200 1.000"];
+brk [color="0.650 0.200 1.000"];
+getfreehdr [color="0.650 0.200 1.000"];
+strlen [color="0.650 0.200 1.000"];
+umul [color="0.650 0.200 1.000"];
+doprnt [color="0.650 0.200 1.000"];
+copyproto [color="0.650 0.200 1.000"];
+creat [color="0.650 0.200 1.000"];
+demote [color="0.650 0.200 1.000"];
+exit [color="0.650 0.200 1.000"];
+free [color="0.650 0.200 1.000"];
+getpagesize [color="0.650 0.200 1.000"];
+getpid [color="0.650 0.200 1.000"];
+initree [color="0.650 0.200 1.000"];
+insert [color="0.650 0.200 1.000"];
+localeconv [color="0.650 0.200 1.000"];
+main [color="0.650 0.200 1.000"];
+malloc [color="0.650 0.200 1.000"];
+morecore [color="0.650 0.200 1.000"];
+oldfile [color="0.650 0.200 1.000"];
+on_exit [color="0.650 0.200 1.000"];
+profil [color="0.650 0.200 1.000"];
+putfreehdr [color="0.650 0.200 1.000"];
+safeoutfil [color="0.650 0.200 1.000"];
+sprintf [color="0.650 0.200 1.000"];
+term [color="0.650 0.200 1.000"];
+}
diff --git a/graphs/directed/ldbxtried.dot b/graphs/directed/ldbxtried.dot
new file mode 100644 (file)
index 0000000..5bacb11
--- /dev/null
@@ -0,0 +1,416 @@
+digraph g {
+graph [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+node [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+shape = "box"
+color = "black"
+width = "0.5"
+style = "filled"
+];
+edge [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"n0" [
+label = "18519\n?"
+color = "lightblue"
+];
+"n1" [
+label = "4836"
+shape = "ellipse"
+color = "maroon1"
+];
+"n2" [
+label = "ttyqa"
+shape = "ellipse"
+color = "maroon1"
+];
+"n448" [
+label = "21079\nlefty"
+color = "lightblue"
+];
+"n449" [
+label = "tried.lefty"
+shape = "ellipse"
+color = "maroon1"
+];
+"n454" [
+fontsize = "7"
+label = "bunting\n6000"
+shape = "doublecircle"
+color = "green"
+];
+"n460" [
+label = ""
+shape = "doublecircle"
+color = "yellow"
+];
+"n461" [
+label = ""
+shape = "doublecircle"
+color = "yellow"
+];
+"n462" [
+label = "21084\ntried"
+color = "lightblue"
+];
+"n464" [
+label = "21086\nldbx"
+color = "lightblue"
+];
+"n466" [
+label = "ldbx"
+shape = "ellipse"
+color = "maroon1"
+];
+"n468" [
+label = "21087\nlefty"
+color = "lightblue"
+];
+"n469" [
+label = "sh21086.1"
+shape = "ellipse"
+color = "maroon1"
+];
+"n474" [
+fontsize = "7"
+label = "bunting\n6000"
+shape = "doublecircle"
+color = "green"
+];
+"n479" [
+label = "ldbx.lefty"
+shape = "ellipse"
+color = "maroon1"
+];
+"n482" [
+label = ""
+shape = "doublecircle"
+color = "yellow"
+];
+"n483" [
+label = ""
+shape = "doublecircle"
+color = "yellow"
+];
+"n484" [
+label = "21088\ndot"
+color = "lightblue"
+];
+"n486" [
+label = ""
+shape = "doublecircle"
+color = "yellow"
+];
+"n487" [
+label = ""
+shape = "doublecircle"
+color = "yellow"
+];
+"n488" [
+label = "21089\nxterm"
+color = "lightblue"
+];
+"n496" [
+fontsize = "7"
+label = "bunting\n6000"
+shape = "doublecircle"
+color = "green"
+];
+"n500" [
+label = "ptyq2"
+shape = "ellipse"
+color = "maroon1"
+];
+"n503" [
+label = "21090\nldbxmp"
+color = "lightblue"
+];
+"n505" [
+label = "ttyq2"
+shape = "ellipse"
+color = "maroon1"
+];
+"n512" [
+label = "ptyq5"
+shape = "ellipse"
+color = "maroon1"
+];
+"n513" [
+label = "ttyq5"
+shape = "ellipse"
+color = "maroon1"
+];
+"n514" [
+label = "21091\ndbx"
+color = "lightblue"
+];
+"n518" [
+label = "tty"
+shape = "ellipse"
+color = "maroon1"
+];
+"n526" [
+label = "delaunay.c"
+shape = "ellipse"
+color = "maroon1"
+];
+subgraph "cluster0" {
+graph [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+label = "toucan"
+color = "black"
+];
+node [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+shape = "box"
+color = "black"
+width = "0.5"
+style = "filled"
+];
+edge [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"n0"
+"n468"
+"n486"
+"n460"
+"n487"
+"n514"
+"n461"
+"n488"
+"n462"
+"n464"
+"n482"
+"n483"
+"n448"
+"n484"
+"n503"
+}
+"n0" -> "n1" [
+dir = "both"
+];
+"n0" -> "n2" [
+dir = "both"
+];
+"n0" -> "n2" [
+dir = "both"
+];
+"n0" -> "n2" [
+dir = "both"
+];
+"n0" -> "n448" [
+style = "dotted"
+];
+"n448" -> "n2" [
+dir = "both"
+];
+"n448" -> "n2" [
+dir = "both"
+];
+"n448" -> "n2" [
+dir = "both"
+];
+"n448" -> "n449" [
+dir = "back"
+];
+"n448" -> "n454" [
+dir = "both"
+];
+"n448" -> "n460" [
+dir = "back"
+];
+"n448" -> "n461" [
+dir = "forward"
+];
+"n448" -> "n462" [
+style = "dotted"
+];
+"n462" -> "n2" [
+dir = "both"
+];
+"n462" -> "n2" [
+dir = "both"
+];
+"n462" -> "n2" [
+dir = "both"
+];
+"n462" -> "n449" [
+dir = "back"
+];
+"n462" -> "n460" [
+dir = "forward"
+];
+"n462" -> "n461" [
+dir = "back"
+];
+"n462" -> "n460" [
+dir = "forward"
+];
+"n462" -> "n461" [
+dir = "back"
+];
+"n0" -> "n464" [
+style = "dotted"
+];
+"n464" -> "n2" [
+dir = "both"
+];
+"n464" -> "n2" [
+dir = "both"
+];
+"n464" -> "n2" [
+dir = "both"
+];
+"n464" -> "n466" [
+dir = "back"
+];
+"n464" -> "n468" [
+style = "dotted"
+];
+"n468" -> "n2" [
+dir = "both"
+];
+"n468" -> "n2" [
+dir = "both"
+];
+"n468" -> "n469" [
+dir = "back"
+];
+"n468" -> "n474" [
+dir = "both"
+];
+"n468" -> "n479" [
+dir = "back"
+];
+"n468" -> "n482" [
+dir = "back"
+];
+"n468" -> "n483" [
+dir = "forward"
+];
+"n468" -> "n484" [
+style = "dotted"
+];
+"n484" -> "n2" [
+dir = "both"
+];
+"n484" -> "n483" [
+dir = "back"
+];
+"n484" -> "n479" [
+dir = "back"
+];
+"n484" -> "n482" [
+dir = "forward"
+];
+"n468" -> "n486" [
+dir = "back"
+];
+"n468" -> "n487" [
+dir = "forward"
+];
+"n468" -> "n488" [
+style = "dotted"
+];
+"n488" -> "n486" [
+dir = "forward"
+];
+"n488" -> "n2" [
+dir = "both"
+];
+"n488" -> "n487" [
+dir = "back"
+];
+"n488" -> "n469" [
+dir = "back"
+];
+"n488" -> "n2" [
+dir = "both"
+];
+"n488" -> "n479" [
+dir = "back"
+];
+"n488" -> "n496" [
+dir = "both"
+];
+"n488" -> "n500" [
+dir = "both"
+];
+"n488" -> "n503" [
+style = "dotted"
+];
+"n503" -> "n479" [
+dir = "back"
+];
+"n503" -> "n486" [
+dir = "forward"
+];
+"n503" -> "n487" [
+dir = "back"
+];
+"n503" -> "n505" [
+dir = "both"
+];
+"n503" -> "n505" [
+dir = "both"
+];
+"n503" -> "n505" [
+dir = "forward"
+];
+"n503" -> "n512" [
+dir = "both"
+];
+"n503" -> "n514" [
+style = "dotted"
+];
+"n514" -> "n487" [
+dir = "back"
+];
+"n514" -> "n486" [
+dir = "forward"
+];
+"n514" -> "n479" [
+dir = "back"
+];
+"n514" -> "n505" [
+dir = "forward"
+];
+"n503" -> "n486" [
+dir = "forward"
+];
+"n514" -> "n518" [
+dir = "back"
+];
+"n514" -> "n513" [
+dir = "both"
+];
+"n514" -> "n513" [
+dir = "both"
+];
+"n514" -> "n518" [
+dir = "back"
+];
+"n514" -> "n526" [
+dir = "back"
+];
+"n503" -> "n487" [
+dir = "back"
+];
+}
diff --git a/graphs/directed/longflat.dot b/graphs/directed/longflat.dot
new file mode 100644 (file)
index 0000000..644d677
--- /dev/null
@@ -0,0 +1,7 @@
+digraph if
+{
+rankdir=LR;
+  {rank=same;b;c;}
+  a->b;
+  c->b[label="long long long"];
+}
diff --git a/graphs/directed/mike.dot b/graphs/directed/mike.dot
new file mode 100644 (file)
index 0000000..bf049af
--- /dev/null
@@ -0,0 +1,42 @@
+digraph mike{
+size = "8,8";
+       a -> A;
+       a -> m;
+       a -> E;
+       t -> O;
+       r -> V;
+       r -> Q;
+       p -> B;
+       m -> R;
+       l -> C;
+       c -> C;
+       W -> X;
+       W -> D;
+       V -> W;
+       T -> U;
+       Q -> T;
+       Q -> H;
+       Q -> A;
+       O -> K;
+       L -> U;
+       K -> L;
+       K -> J;
+       K -> E;
+       J -> I;
+       R -> B;
+       P -> F;
+       H -> R;
+       H -> P;
+       U -> H;
+       G -> U;
+       E -> G;
+       C -> Z;
+       C -> D;
+       S -> D;
+       B -> N;
+       B -> D;
+       B -> S;
+       M -> B;
+       A -> M;
+       N -> Y;
+}
diff --git a/graphs/directed/nhg.dot b/graphs/directed/nhg.dot
new file mode 100644 (file)
index 0000000..826e404
--- /dev/null
@@ -0,0 +1,13 @@
+digraph automata_0 {
+       size ="8.5, 11";
+       node [shape = circle];
+       0 [ style = filled, color=lightgrey ];
+       2 [ shape = doublecircle ];
+       0 -> 2 [ label = "a " ];
+       0 -> 1 [ label = "other " ];
+       1 -> 2 [ label = "a " ];
+       1 -> 1 [ label = "other " ];
+       2 -> 2 [ label = "a " ];
+       2 -> 1 [ label = "other " ];
+       "Machine: a" [ shape = plaintext ];
+}
diff --git a/graphs/directed/oldarrows.dot b/graphs/directed/oldarrows.dot
new file mode 100644 (file)
index 0000000..49416d6
--- /dev/null
@@ -0,0 +1,57 @@
+digraph G {
+  // leave some space for the head/taillabels
+  graph [ranksep=1.5 splines=true overlap=false]
+
+  // to avoid confusion, remember this:
+  // it's spelt tail/head, but it's read start/end
+
+  // emphasize theatrically
+  // show only explicitly given head/tails
+  // put head/tail labels farther from the node
+//  edge [arrowsize=2 dir=none labeldistance=3]
+  edge [dir=none labeldistance=3]
+
+  // not interested in node labels
+  node [shape=circle width=0.5 label=""]
+
+  {
+    edge [samehead=ahead samearrowhead=1]
+    a->Z [arrowtail=none taillabel=none]
+    b->Z [arrowtail=normal taillabel=normal]
+    c->Z [arrowtail=inv taillabel=inv]
+    d->Z [arrowtail=dot taillabel=dot]
+    e->Z [arrowtail=odot taillabel=odot]
+    f->Z [arrowtail=invdot taillabel=invdot]
+    g->Z [arrowtail=invodot taillabel=invodot]
+    h->Z [arrowtail=open taillabel=open]
+    i->Z [arrowtail=halfopen taillabel=halfopen arrowhead=inv headlabel=samehead]
+    j->Z [arrowtail=empty taillabel=empty]
+    k->Z [arrowtail=invempty taillabel=invempty]
+    l->Z [arrowtail=diamond taillabel=diamond]
+    m->Z [arrowtail=odiamond taillabel=odiamond]
+    n->Z [arrowtail=box taillabel=box]
+    o->Z [arrowtail=obox taillabel=obox]
+    p->Z [arrowtail=tee taillabel=tee]
+    q->Z [arrowtail=crow taillabel=crow]
+  }
+  {
+    edge [sametail=atail samearrowtail=1]
+    Z->A [arrowhead=none headlabel=none]
+    Z->B [arrowhead=normal headlabel=normal]
+    Z->C [arrowhead=inv headlabel=inv]
+    Z->D [arrowhead=dot headlabel=dot]
+    Z->E [arrowhead=odot headlabel=odot]
+    Z->F [arrowhead=invdot headlabel=invdot]
+    Z->G [arrowhead=invodot headlabel=invodot]
+    Z->H [arrowhead=open headlabel=open]
+    Z->I [arrowhead=halfopen headlabel=halfopen arrowtail=inv taillabel=sametail]
+    Z->J [arrowhead=empty headlabel=empty]
+    Z->K [arrowhead=invempty headlabel=invempty]
+    Z->L [arrowhead=diamond headlabel=diamond]
+    Z->M [arrowhead=odiamond headlabel=odiamond]
+    Z->N [arrowhead=box headlabel=box]
+    Z->O [arrowhead=obox headlabel=obox]
+    Z->P [arrowhead=tee headlabel=tee]
+    Z->Q [arrowhead=crow headlabel=crow]
+  }
+}
diff --git a/graphs/directed/pgram.dot b/graphs/directed/pgram.dot
new file mode 100644 (file)
index 0000000..367eef7
--- /dev/null
@@ -0,0 +1,91 @@
+digraph test {
+
+    size="7,9.5";
+    page="8,10.5";
+    ratio=fill;
+    rankdir=LR;
+
+    { rank=same;
+      node [shape=house];
+      A;C;E;G;I;K;M;O;Q;S;U;W;Y;
+      node [shape=invhouse];
+      B;D;F;H;J;L;N;P;R;T;V;X;Z;
+    }
+
+    { rank=same;
+      node [shape=parallelogram];
+      "Parallelogram" [label="This is a test\nof a multiline\nlabel in an\nparallelogram with approx\nsquare aspect"];
+      "a ----- long thin parallelogram";
+      "xx" [label="m"];
+      "yy" [label="a\nb\nc\nd\ne\nf"];
+      node [shape=octagon];
+      "Octagon" [label="This is a test\nof a multiline\nlabel in an\noctagon with approx\nsquare aspect"];
+      node [shape=parallelogram];
+      "Parallelogram" [label="This is a test\nof a multiline\nlabel in an\nparallelogram with approx\nsquare aspect"];
+      "a ----- long thin parallelogram";
+      "zz" [label="m"];
+      "qq" [label="a\nb\nc\nd\ne\nf"];
+      ordering=out;
+    }
+
+    Parallelogram -> A;
+    Parallelogram -> B;
+    Parallelogram -> C;
+    Parallelogram -> D;
+    Parallelogram -> E;
+    Parallelogram -> F;
+    Parallelogram -> G;
+    Parallelogram -> H;
+    Parallelogram -> I;
+    Parallelogram -> J;
+    Parallelogram -> K;
+    Parallelogram -> L;
+    Parallelogram -> M;
+    Parallelogram -> N;
+    Parallelogram -> O;
+    Parallelogram -> P;
+    Parallelogram -> Q;
+    Parallelogram -> R;
+    Parallelogram -> S;
+    Parallelogram -> T;
+    Parallelogram -> U;
+    Parallelogram -> V;
+    Parallelogram -> W;
+    Parallelogram -> X;
+    Parallelogram -> Y;
+    Parallelogram -> Z;
+
+    { rank=same;
+      node [shape=triangle];
+      a;c;e;g;i;k;m;o;q;s;u;w;y;
+      node [shape=tripleoctagon];
+      b;d;f;h;j;l;n;p;r;t;v;x;z;
+    }
+
+    a -> Parallelogram -> Octagon;
+    b -> Parallelogram -> Octagon;
+    c -> Parallelogram -> Octagon;
+    d -> Parallelogram -> Octagon;
+    e -> Parallelogram -> Octagon;
+    f -> Parallelogram -> Octagon;
+    g -> Parallelogram -> Octagon;
+    h -> Parallelogram -> Octagon;
+    i -> Parallelogram -> Octagon;
+    j -> Parallelogram -> Octagon;
+    k -> Parallelogram -> Octagon;
+    l -> Parallelogram -> Octagon;
+    m -> Parallelogram -> Octagon;
+    n -> Parallelogram -> Octagon;
+    o -> Parallelogram -> Octagon;
+    p -> Parallelogram -> Octagon;
+    q -> Parallelogram -> Octagon;
+    r -> Parallelogram -> Octagon;
+    s -> Parallelogram -> Octagon;
+    t -> Parallelogram -> Octagon;
+    u -> Parallelogram -> Octagon;
+    v -> Parallelogram -> Octagon;
+    w -> Parallelogram -> Octagon;
+    x -> Parallelogram -> Octagon;
+    y -> Parallelogram -> Octagon;
+    z -> Parallelogram -> Octagon;
+}
diff --git a/graphs/directed/pm2way.dot b/graphs/directed/pm2way.dot
new file mode 100644 (file)
index 0000000..98ee295
--- /dev/null
@@ -0,0 +1,126 @@
+digraph g {
+graph [
+];
+node [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+shape = "box"
+color = "black"
+width = "0.5"
+];
+edge [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"22690" [
+label = "22690\n?"
+pname = "?"
+kind = "proc"
+];
+"22692" [
+label = "22692\ndotty"
+pname = "dotty"
+kind = "proc"
+];
+"116842+2595" [
+label = "116842+2595\n/home/ek/work/sun4/bin/dotty"
+fname = "/home/ek/work/sun4/bin/dotty"
+shape = "ellipse"
+kind = "file"
+];
+"22693" [
+label = "22693\nlefty"
+pname = "lefty"
+kind = "proc"
+];
+"182440-1" [
+label = "182440-1\n182441-1\npipe"
+fontsize = "7"
+fname = "pipe"
+shape = "doublecircle"
+subkind = "pipe"
+kind = "file"
+];
+"182442-1" [
+label = "182442-1\n182443-1\npipe"
+fontsize = "7"
+fname = "pipe"
+shape = "doublecircle"
+subkind = "pipe"
+kind = "file"
+];
+"22694" [
+label = "22694\ndot"
+pname = "dot"
+kind = "proc"
+];
+"4761+2595" [
+label = "4761+2595\n/home/ek/pm2.dot"
+fname = "/home/ek/pm2.dot"
+shape = "ellipse"
+kind = "file"
+];
+"22690" -> "22692" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"22692" -> "116842+2595" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "back"
+color = "black"
+];
+"22692" -> "22693" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"22693" -> "182440-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "back"
+color = "black"
+];
+"22693" -> "182442-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "forward"
+color = "black"
+];
+"22693" -> "22694" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"22694" -> "182440-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "forward"
+color = "black"
+];
+"22694" -> "182442-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "back"
+color = "black"
+];
+"22693" -> "4761+2595" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "back"
+color = "black"
+];
+}
diff --git a/graphs/directed/pmpipe.dot b/graphs/directed/pmpipe.dot
new file mode 100644 (file)
index 0000000..6eea33e
--- /dev/null
@@ -0,0 +1,219 @@
+digraph g {
+graph [
+];
+node [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+shape = "box"
+color = "black"
+width = "0.5"
+];
+edge [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"23296" [
+label = "23296\n?"
+pname = "?"
+kind = "proc"
+];
+"182948-1" [
+label = "182948-1\n182949-1\npipe"
+fontsize = "7"
+fname = "pipe"
+shape = "doublecircle"
+subkind = "pipe"
+kind = "file"
+];
+"23310" [
+label = "23310\ncat"
+pname = "cat"
+kind = "proc"
+];
+"182950-1" [
+label = "182950-1\n182951-1\npipe"
+fontsize = "7"
+fname = "pipe"
+shape = "doublecircle"
+subkind = "pipe"
+kind = "file"
+];
+"23311" [
+label = "23311\ncat"
+pname = "cat"
+kind = "proc"
+];
+"182952-1" [
+label = "182952-1\n182953-1\npipe"
+fontsize = "7"
+fname = "pipe"
+shape = "doublecircle"
+subkind = "pipe"
+kind = "file"
+];
+"23312" [
+label = "23312\ncat"
+pname = "cat"
+kind = "proc"
+];
+"182954-1" [
+label = "182954-1\n182955-1\npipe"
+fontsize = "7"
+fname = "pipe"
+shape = "doublecircle"
+subkind = "pipe"
+kind = "file"
+];
+"23313" [
+label = "23313\ncat"
+pname = "cat"
+kind = "proc"
+];
+"79893+2568" [
+label = "79893+2568\n/usr/share/lib/termcap"
+fname = "/usr/share/lib/termcap"
+shape = "ellipse"
+kind = "file"
+];
+"85+2560" [
+label = "85+2560\n?"
+fname = "?"
+shape = "ellipse"
+kind = "file"
+];
+"23314" [
+label = "23314\ncat"
+pname = "cat"
+kind = "proc"
+];
+"4151865284+0" [
+label = "4151865284+0\n/tmp/termcap"
+fname = "/tmp/termcap"
+shape = "ellipse"
+kind = "file"
+];
+"23296" -> "23310" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"23296" -> "23311" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"23311" -> "182948-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "back"
+color = "black"
+];
+"23310" -> "182948-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "forward"
+color = "black"
+];
+"23296" -> "23312" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"23312" -> "182952-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "forward"
+color = "black"
+];
+"23312" -> "182950-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "back"
+color = "black"
+];
+"23296" -> "23313" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"23313" -> "182954-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "forward"
+color = "black"
+];
+"23311" -> "182950-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "forward"
+color = "black"
+];
+"23310" -> "79893+2568" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "back"
+color = "black"
+];
+"23296" -> "85+2560" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "both"
+color = "black"
+];
+"23296" -> "23314" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+color = "black"
+];
+"23314" -> "85+2560" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "both"
+color = "black"
+];
+"23314" -> "182954-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "back"
+color = "black"
+];
+"23296" -> "85+2560" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "both"
+color = "black"
+];
+"23314" -> "4151865284+0" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "forward"
+color = "black"
+];
+"23313" -> "182952-1" [
+fontsize = "14"
+fontname = "Times-Roman"
+fontcolor = "black"
+dir = "back"
+color = "black"
+];
+}
diff --git a/graphs/directed/polypoly.dot b/graphs/directed/polypoly.dot
new file mode 100644 (file)
index 0000000..9c84114
--- /dev/null
@@ -0,0 +1,162 @@
+digraph polypoly {
+       
+    size="7,9.5";
+    page="8.5,11";
+    ratio=fill;
+    node [shape=polygon];
+
+    { rank=same;
+      node [sides=0];
+      node [peripheries=1];
+      0000 [label="M"];
+      0001 [label="MMMMMMMMMM"];
+      0002 [label="M\nM\nM\nM\nM\nM"];
+      0003 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+      node [peripheries=2];
+      0010 [label="M"];
+      0011 [label="MMMMMMMMMM"];
+      0012 [label="M\nM\nM\nM\nM\nM"];
+      0013 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+      node [distortion=-.3];
+      0110 [label="M"];
+      0111 [label="MMMMMMMMMM"];
+      0112 [label="M\nM\nM\nM\nM\nM"];
+      0113 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+    }
+    { rank=same;
+      node [sides=3];
+      node [peripheries=1];
+      node [orientation=0];
+      3000 [label="M"];
+      3001 [label="MMMMMMMMMM"];
+      3002 [label="M\nM\nM\nM\nM\nM"];
+      3003 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+      node [peripheries=2];
+      node [orientation=60];
+      3110 [label="M"];
+      3111 [label="MMMMMMMMMM"];
+      3112 [label="M\nM\nM\nM\nM\nM"];
+      3113 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+    }
+    3000->0000;
+    { rank=same;
+      node [sides=4];
+      node [peripheries=1];
+      node [orientation=0];
+      4000 [label="M"];
+      4001 [label="MMMMMMMMMM"];
+      4002 [label="M\nM\nM\nM\nM\nM"];
+      4003 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+      node [peripheries=2];
+      node [orientation=45];
+      4110 [label="M"];
+      4111 [label="MMMMMMMMMM"];
+      4112 [label="M\nM\nM\nM\nM\nM"];
+      4113 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+    }
+    4000->3000;
+    { rank=same;
+      node [sides=5];
+      node [peripheries=1];
+      node [orientation=0];
+      5000 [label="M"];
+      5001 [label="MMMMMMMMMM"];
+      5002 [label="M\nM\nM\nM\nM\nM"];
+      5003 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+      node [peripheries=2];
+      node [orientation=36];
+      5110 [label="M"];
+      5111 [label="MMMMMMMMMM"];
+      5112 [label="M\nM\nM\nM\nM\nM"];
+      5113 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+    }
+    5000->4000;
+    { rank=same;
+      node [sides=6];
+      node [peripheries=1];
+      node [orientation=0];
+      6000 [label="M"];
+      6001 [label="MMMMMMMMMM"];
+      6002 [label="M\nM\nM\nM\nM\nM"];
+      6003 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+      node [peripheries=2];
+      node [orientation=30];
+      6110 [label="M"];
+      6111 [label="MMMMMMMMMM"];
+      6112 [label="M\nM\nM\nM\nM\nM"];
+      6113 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+    }
+    6000->5000;
+    { rank=same;
+      node [sides=7];
+      node [peripheries=1];
+      node [orientation=0];
+      7000 [label="M"];
+      7001 [label="MMMMMMMMMM"];
+      7002 [label="M\nM\nM\nM\nM\nM"];
+      7003 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+      node [peripheries=2];
+      node [orientation=25.7];
+      7110 [label="M"];
+      7111 [label="MMMMMMMMMM"];
+      7112 [label="M\nM\nM\nM\nM\nM"];
+      7113 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+    }
+    7000->6000;
+    { rank=same;
+      node [sides=8];
+      node [peripheries=1];
+      node [orientation=0];
+      8000 [label="M"];
+      8001 [label="MMMMMMMMMM"];
+      8002 [label="M\nM\nM\nM\nM\nM"];
+      8003 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+      node [peripheries=2];
+      node [orientation=22.5];
+      8110 [label="M"];
+      8111 [label="MMMMMMMMMM"];
+      8112 [label="M\nM\nM\nM\nM\nM"];
+      8113 [label="MMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM\nMMMMMMMMMM"];
+    }
+    8000->7000;
+    { rank=same;
+      node [sides=4];
+      node [peripheries=1];
+      node [regular=1];
+      node [distortion=.5];
+      node [orientation=0];
+      9000 [label="M"];
+      node [orientation=45.];
+      9001 [label="M"];
+      node [orientation=90.];
+      9002 [label="M"];
+      node [orientation=135.];
+      9003 [label="M"];
+      node [orientation=180.];
+      9004 [label="M"];
+      node [orientation=225.];
+      9005 [label="M"];
+      node [orientation=270.];
+      9006 [label="M"];
+      node [orientation=315.];
+      9007 [label="M"];
+      node [peripheries=2];
+      node [orientation=0];
+      9010 [label="M"];
+      node [orientation=45.];
+      9011 [label="M"];
+      node [orientation=90.];
+      9012 [label="M"];
+      node [orientation=135.];
+      9013 [label="M"];
+      node [orientation=180.];
+      9014 [label="M"];
+      node [orientation=225.];
+      9015 [label="M"];
+      node [orientation=270.];
+      9016 [label="M"];
+      node [orientation=315.];
+      9017 [label="M"];
+    }
+    9000->8000;
+}
diff --git a/graphs/directed/proc3d.dot b/graphs/directed/proc3d.dot
new file mode 100644 (file)
index 0000000..5c77148
--- /dev/null
@@ -0,0 +1,443 @@
+digraph g {
+graph [
+fontname=Courier,
+fontsize=24,
+ranksep = 1.0,
+size="10,7.5",
+orientation=land,
+style="setlinewidth(8)"
+page = "8.5,11",
+center=true
+];
+node [
+shape = "box"
+width = "0.5"
+];
+edge [
+];
+subgraph cluster_0 {
+label="gryphon"
+"22342"
+"22343"
+"22346"
+"22347"
+"22351"
+"22344"
+"22345"
+"22348"
+"22350"
+"22357"
+}
+subgraph cluster_1 {
+label=toucan
+"22349"
+"22352"
+"22356"
+"22361"
+"22369"
+"22353"
+"22355"
+"22360"
+"22365"
+"22374"
+}
+subgraph cluster_2 {
+label=parker
+"22354"
+"22359"
+"22375"
+}
+subgraph cluster_3 {
+label=condor
+"22358"
+"22362"
+"22367"
+"22373"
+"22378"
+}
+subgraph cluster_4 {
+label=kite
+"22363"
+"22366"
+"22371"
+"22376"
+"22380"
+}
+subgraph cluster_5 {
+label=coot
+"22368"
+"22372"
+"22377"
+"22379"
+"22381"
+}
+"22316" [
+label = "22316\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22324" [
+label = "22324\nnmake"
+pname = "nmake"
+kind = "proc"
+];
+"22337" [
+label = "22337\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22342" [
+label = "22342\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22343" [
+label = "22343\ngcc"
+pname = "gcc"
+kind = "proc"
+];
+"22344" [
+label = "22344\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22345" [
+label = "22345\ngcc"
+pname = "gcc"
+kind = "proc"
+];
+"22346" [
+label = "22346\ncpp"
+pname = "cpp"
+kind = "proc"
+];
+"22347" [
+label = "22347\ncc1"
+pname = "cc1"
+kind = "proc"
+];
+"22348" [
+label = "22348\ncpp"
+pname = "cpp"
+kind = "proc"
+];
+"93736-32246" [
+label = "93736-32246\n/home/ek/work/src/lefty/lefty.c"
+fname = "/home/ek/work/src/lefty/lefty.c"
+shape = "ellipse"
+kind = "file"
+];
+"22349" [
+label = "22349\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22350" [
+label = "22350\ncc1"
+pname = "cc1"
+kind = "proc"
+];
+"93627-32246" [
+label = "93627-32246\n/home/ek/work/src/lefty/gfxview.c"
+fname = "/home/ek/work/src/lefty/gfxview.c"
+shape = "ellipse"
+kind = "file"
+];
+"22351" [
+label = "22351\nas"
+pname = "as"
+kind = "proc"
+];
+"22352" [
+label = "22352\ngcc"
+pname = "gcc"
+kind = "proc"
+];
+"22353" [
+label = "22353\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22354" [
+label = "22354\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22355" [
+label = "22355\ngcc"
+pname = "gcc"
+kind = "proc"
+];
+"22356" [
+label = "22356\ncpp"
+pname = "cpp"
+kind = "proc"
+];
+"22357" [
+label = "22357\nas"
+pname = "as"
+kind = "proc"
+];
+"22358" [
+label = "22358\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22359" [
+label = "22359\ngcc"
+pname = "gcc"
+kind = "proc"
+];
+"22360" [
+label = "22360\ncpp"
+pname = "cpp"
+kind = "proc"
+];
+"22361" [
+label = "22361\ncc1"
+pname = "cc1"
+kind = "proc"
+];
+"93645-32246" [
+label = "93645-32246\n/home/ek/work/src/lefty/txtview.c"
+fname = "/home/ek/work/src/lefty/txtview.c"
+shape = "ellipse"
+kind = "file"
+];
+"22362" [
+label = "22362\ngcc"
+pname = "gcc"
+kind = "proc"
+];
+"22363" [
+label = "22363\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22365" [
+label = "22365\ncc1"
+pname = "cc1"
+kind = "proc"
+];
+"22366" [
+label = "22366\ngcc"
+pname = "gcc"
+kind = "proc"
+];
+"93638-32246" [
+label = "93638-32246\n/home/ek/work/src/lefty/internal.c"
+fname = "/home/ek/work/src/lefty/internal.c"
+shape = "ellipse"
+kind = "file"
+];
+"22367" [
+label = "22367\ncpp"
+pname = "cpp"
+kind = "proc"
+];
+"22368" [
+label = "22368\nksh"
+pname = "ksh"
+kind = "proc"
+];
+"22369" [
+label = "22369\nas"
+pname = "as"
+kind = "proc"
+];
+"93642-32246" [
+label = "93642-32246\n/home/ek/work/src/lefty/lex.c"
+fname = "/home/ek/work/src/lefty/lex.c"
+shape = "ellipse"
+kind = "file"
+];
+"22371" [
+label = "22371\ncpp"
+pname = "cpp"
+kind = "proc"
+];
+"22372" [
+label = "22372\ngcc"
+pname = "gcc"
+kind = "proc"
+];
+"22373" [
+label = "22373\ncc1"
+pname = "cc1"
+kind = "proc"
+];
+"88860-32246" [
+label = "88860-32246\n/home/ek/dev/src/lefty/stringify.c"
+fname = "/home/ek/dev/src/lefty/stringify.c"
+shape = "ellipse"
+kind = "file"
+];
+"22374" [
+label = "22374\nas"
+pname = "as"
+kind = "proc"
+];
+"22375" [
+label = "22375\nas"
+pname = "as"
+kind = "proc"
+];
+"22376" [
+label = "22376\ncc1"
+pname = "cc1"
+kind = "proc"
+];
+"93626-32246" [
+label = "93626-32246\n/home/ek/work/src/lefty/exec.c"
+fname = "/home/ek/work/src/lefty/exec.c"
+shape = "ellipse"
+kind = "file"
+];
+"22377" [
+label = "22377\ncpp"
+pname = "cpp"
+kind = "proc"
+];
+"22378" [
+label = "22378\nas"
+pname = "as"
+kind = "proc"
+];
+"22379" [
+label = "22379\ncc1"
+pname = "cc1"
+kind = "proc"
+];
+"93643-32246" [
+label = "93643-32246\n/home/ek/work/src/lefty/parse.c"
+fname = "/home/ek/work/src/lefty/parse.c"
+shape = "ellipse"
+kind = "file"
+];
+"22380" [
+label = "22380\nas"
+pname = "as"
+kind = "proc"
+];
+"22381" [
+label = "22381\nas"
+pname = "as"
+kind = "proc"
+];
+"37592-32246" [
+label = "37592-32246\n/home/ek/dev/src/lefty/exec.h"
+fname = "/home/ek/dev/src/lefty/exec.h"
+shape = "ellipse"
+kind = "file"
+];
+"135504-32246" [
+label = "135504-32246\n/home/ek/work/sun4/lefty/display.o"
+fname = "/home/ek/work/sun4/lefty/display.o"
+shape = "ellipse"
+kind = "file"
+];
+"22316" -> "22324" [
+];
+"22324" -> "22337" [
+];
+"22337" -> "22342" [
+];
+"22342" -> "22343" [
+];
+"22337" -> "22344" [
+];
+"22344" -> "22345" [
+];
+"22343" -> "22346" [
+];
+"22343" -> "22347" [
+];
+"22345" -> "22348" [
+];
+"22346" -> "93736-32246" [
+];
+"22337" -> "22349" [
+];
+"22345" -> "22350" [
+];
+"22348" -> "93627-32246" [
+];
+"22343" -> "22351" [
+];
+"22349" -> "22352" [
+];
+"22337" -> "22353" [
+];
+"22337" -> "22354" [
+];
+"22353" -> "22355" [
+];
+"22352" -> "22356" [
+];
+"22345" -> "22357" [
+];
+"22337" -> "22358" [
+];
+"22354" -> "22359" [
+];
+"22355" -> "22360" [
+];
+"22352" -> "22361" [
+];
+"22356" -> "93645-32246" [
+];
+"22358" -> "22362" [
+];
+"22337" -> "22363" [
+];
+"22355" -> "22365" [
+];
+"22363" -> "22366" [
+];
+"22360" -> "93638-32246" [
+];
+"22362" -> "22367" [
+];
+"22337" -> "22368" [
+];
+"22352" -> "22369" [
+];
+"22324" -> "93642-32246" [
+];
+"22366" -> "22371" [
+];
+"22368" -> "22372" [
+];
+"22362" -> "22373" [
+];
+"22367" -> "88860-32246" [
+];
+"22355" -> "22374" [
+];
+"22359" -> "22375" [
+];
+"22366" -> "22376" [
+];
+"22371" -> "93626-32246" [
+];
+"22372" -> "22377" [
+];
+"22362" -> "22378" [
+];
+"22372" -> "22379" [
+];
+"22377" -> "93643-32246" [
+];
+"22366" -> "22380" [
+];
+"22372" -> "22381" [
+];
+"22371" -> "37592-32246" [
+];
+"22375" -> "135504-32246" [
+];
+
+/* hack to increase node separation */
+{      rank = same; "22337" -> "93642-32246" [style=invis,minlen=10]; }
+
+}
diff --git a/graphs/directed/record2.dot b/graphs/directed/record2.dot
new file mode 100644 (file)
index 0000000..7e393c0
--- /dev/null
@@ -0,0 +1,6 @@
+digraph G {
+    node [shape=record];
+    a [label = "<f0> foo | x | <f1> bar"];
+    b [label = "a | { <f0> foo | x | <f1> bar } | b"];
+    a:f0 -> b:f1 
+}
diff --git a/graphs/directed/records.dot b/graphs/directed/records.dot
new file mode 100644 (file)
index 0000000..038edfb
--- /dev/null
@@ -0,0 +1,17 @@
+digraph G {
+       rankdir=LR;
+       node [shape=record];
+       a [ label ="<bala> Graphs can\lbe fun\l|<f1> mid|<f2> right"];
+       b [ label ="<left>   |<mid> b |   " ];
+       c [ label ="<p1>   | c |<p2>   " ];
+       x [ label ="<p1>   | x |<p2>   " ];
+       y [ label ="<p1>   | y |<p2>   " ];
+       z [ label ="   | z |<p2>   " ];
+       a:bala -> b:left;
+       a:f1 -> d;
+       a:f2 -> y:"p1";
+       c:"p1" -> d;
+       b:mid -> x:"p1";
+       c:"p2" -> y:"p2";
+       b:left -> z:"p2";
+}
diff --git a/graphs/directed/rowe.dot b/graphs/directed/rowe.dot
new file mode 100644 (file)
index 0000000..29eb327
--- /dev/null
@@ -0,0 +1,72 @@
+digraph rowe {
+       node [shape  = box];
+       size = "6,6";
+       1 -> 2;
+       1 -> 10;
+       10 -> 14;
+       10 -> 12;
+       10 -> 13;
+       10 -> 11;
+       2 -> 18;
+       2 -> 17;
+       2 -> 16;
+       2 -> 3;
+       11 -> 4;
+       16 -> 4;
+       3 -> 4;
+       4 -> 5;
+       13 -> 19;
+       17 -> 19;
+       5 -> 23;
+       5 -> 35;
+       5 -> 6;
+       37 -> 39;
+       37 -> 41;
+       37 -> 40;
+       37 -> 38;
+       19 -> 20;
+       19 -> 28;
+       19 -> 21;
+       12 -> 29;
+       18 -> 29;
+       41 -> 29;
+       28 -> 29;
+       29 -> 30;
+       30 -> 31;
+       30 -> 33;
+       31 -> 32;
+       21 -> 22;
+       32 -> 23;
+       22 -> 23;
+       6 -> 7;
+       23 -> 24;
+       7 -> 8;
+       24 -> 25;
+       24 -> 27;
+       35 -> 43;
+       35 -> 36;
+       8 -> 9;
+       14 -> 15;
+       39 -> 15;
+       20 -> 15;
+       33 -> 34;
+       43 -> 40;
+       43 -> 38;
+       25 -> 26;
+       9 -> 42;
+       10 -> 1;
+       15 -> 1;
+       23 -> 1;
+       31 -> 1;
+       2 -> 1;
+       25 -> 1;
+       9 -> 1;
+       38 -> 4;
+       26 -> 4;
+       42 -> 4;
+       40 -> 19;
+       36 -> 19;
+       34 -> 29;
+       33 -> 30;
+       27 -> 24;
+}
diff --git a/graphs/directed/sdh.dot b/graphs/directed/sdh.dot
new file mode 100644 (file)
index 0000000..38e1434
--- /dev/null
@@ -0,0 +1,284 @@
+digraph G {
+       graph [bgcolor=black];  /* set background */
+       edge [color=white];
+       graph[page="8.5,11",size="7.5,7",ratio=fill,center=1];
+       node[style=filled,label=""];
+       subgraph ds3CTP {
+               rank = same;
+               node[shape=box,color=green];
+               ds3CTP_1_1;
+               ds3CTP_1_2;
+               ds3CTP_5_1;
+               ds3CTP_5_2;
+       }
+       subgraph t3TTP {
+               rank = same;
+               node[shape=invtriangle,color=red];
+               t3TTP_1_1;
+               t3TTP_5_2;
+       }
+       subgraph vc3TTP {
+               rank = same;
+               node[shape=invtriangle,color=red];
+               vc3TTP_1_2;
+               vc3TTP_5_1;
+       }
+       subgraph fabric {
+               rank = same;
+               node[shape=hexagon,color=blue];
+               fabric_1_2;
+               fabric_4_1;
+               fabric_5_1;
+       }
+       subgraph xp {
+               rank = same;
+               node[shape=diamond,color=blue];
+               xp_1_2;
+               xp_4_1;
+               xp_5_1;
+       }
+       subgraph au3CTP {
+               rank = same;
+               node[shape=box,color=green];
+               au3CTP_1_2;
+               au3CTP_4_1;
+               au3CTP_4_2;
+               au3CTP_5_1;
+       }
+       subgraph aug {
+               rank = same;
+               node[shape=invtrapezium,color=pink];
+               aug_1_2;
+               aug_4_1;
+               aug_4_2;
+               aug_5_1;
+       }
+       subgraph protectionTTP {
+               rank = same;
+               node[shape=invtriangle,color=red];
+               prTTP_1_2;
+               prTTP_4_1;
+               prTTP_4_2;
+               prTTP_5_1;
+       }
+       subgraph protectionGroup {
+               rank = same;
+               node[shape=hexagon,color=blue];
+               pg_1_2;
+               pg_4_1;
+               pg_4_2;
+               pg_5_1;
+       }
+       subgraph protectionUnit {
+               rank = same;
+               node[shape=diamond,color=blue];
+               pu_1_2;
+               pu_4_1;
+               pu_4_2;
+               pu_5_1;
+       }
+       subgraph protectionCTP {
+               node[shape=box,color=green];
+               prCTP_1_2;
+               prCTP_4_1;
+               prCTP_4_2;
+               prCTP_5_1;
+       }
+       subgraph msTTP {
+               rank = same;
+               node[shape=invtriangle,color=red];
+               msTTP_1_2;
+               msTTP_4_1;
+               msTTP_4_2;
+               msTTP_5_1;
+       }
+       subgraph msCTP {
+               rank = same;
+               node[shape=box,color=green];
+               msCTP_1_2;
+               msCTP_3_1;
+               msCTP_3_2;
+               msCTP_4_1;
+               msCTP_4_2;
+               msCTP_5_1;
+       }
+       subgraph rsTTP {
+               rank = same;
+               node[shape=invtriangle,color=red];
+               rsTTP_1_2;
+               rsTTP_3_1;
+               rsTTP_3_2;
+               rsTTP_4_1;
+               rsTTP_4_2;
+               rsTTP_5_1;
+       }
+       subgraph rsCTP {
+               rank = same;
+               node[shape=box,color=green];
+               rsCTP_1_2;
+               rsCTP_2_1;
+               rsCTP_2_2;
+               rsCTP_3_1;
+               rsCTP_3_2;
+               rsCTP_4_1;
+               rsCTP_4_2;
+               rsCTP_5_1;
+       }
+       subgraph spiTTP {
+               rank = same;
+               node[shape=invtriangle,color=red];
+               spiTTP_1_2;
+               spiTTP_2_1;
+               spiTTP_2_2;
+               spiTTP_3_1;
+               spiTTP_3_2;
+               spiTTP_4_1;
+               spiTTP_4_2;
+               spiTTP_5_1;
+       }
+       subgraph me {
+               rank = same;
+               node[shape=box,peripheries=2];
+               me_1;
+               me_2;
+               me_3;
+               me_4;
+               me_5;
+       }
+       subgraph client_server {
+               edge[style=dotted,dir=none,weight=100];
+               ds3CTP_1_1->t3TTP_1_1;
+               ds3CTP_1_2->vc3TTP_1_2;
+               au3CTP_1_2->aug_1_2->prTTP_1_2;
+               prCTP_1_2->msTTP_1_2;
+               msCTP_1_2->rsTTP_1_2;
+               rsCTP_1_2->spiTTP_1_2;
+               rsCTP_2_1->spiTTP_2_1;
+               rsCTP_2_2->spiTTP_2_2;
+               msCTP_3_1->rsTTP_3_1;
+               rsCTP_3_1->spiTTP_3_1;
+               msCTP_3_2->rsTTP_3_2;
+               rsCTP_3_2->spiTTP_3_2;
+               au3CTP_4_1->aug_4_1->prTTP_4_1;
+               prCTP_4_1->msTTP_4_1;
+               msCTP_4_1->rsTTP_4_1;
+               rsCTP_4_1->spiTTP_4_1;
+               au3CTP_4_2->aug_4_2->prTTP_4_2;
+               prCTP_4_2->msTTP_4_2;
+               msCTP_4_2->rsTTP_4_2;
+               rsCTP_4_2->spiTTP_4_2;
+               ds3CTP_5_1->vc3TTP_5_1;
+               au3CTP_5_1->aug_5_1->prTTP_5_1;
+               prCTP_5_1->msTTP_5_1;
+               msCTP_5_1->rsTTP_5_1;
+               rsCTP_5_1->spiTTP_5_1;
+               ds3CTP_5_2->t3TTP_5_2;
+       }
+       subgraph trail {
+               edge[style=dashed,dir=none];
+               vc3TTP_1_2->vc3TTP_5_1;
+               prTTP_1_2->prTTP_4_1;
+               prTTP_4_2->prTTP_5_1;
+               msTTP_1_2->msTTP_4_1;
+               msTTP_4_2->msTTP_5_1;
+               rsTTP_1_2->rsTTP_3_1;
+               rsTTP_3_2->rsTTP_4_1;
+               rsTTP_4_2->rsTTP_5_1;
+               spiTTP_1_2->spiTTP_2_1;
+               spiTTP_2_2->spiTTP_3_1;
+               spiTTP_3_2->spiTTP_4_1;
+               spiTTP_4_2->spiTTP_5_1;
+       }
+       subgraph contain {
+               pu_1_2->pg_1_2;
+               pu_4_1->pg_4_1;
+               pu_4_2->pg_4_2;
+               pu_5_1->pg_5_1;
+               xp_1_2->fabric_1_2;
+               xp_4_1->fabric_4_1;
+               xp_5_1->fabric_5_1;
+               fabric_1_2->me_1;
+               fabric_4_1->me_4;
+               fabric_5_1->me_5;
+               pg_1_2->me_1;
+               pg_4_1->me_4;
+               pg_4_2->me_4;
+               pg_5_1->me_5;
+               t3TTP_1_1->me_1;
+               t3TTP_5_2->me_5;
+               vc3TTP_1_2->me_1;
+               vc3TTP_5_1->me_5;
+               prTTP_1_2->me_1;
+               prTTP_4_1->me_4;
+               prTTP_4_2->me_4;
+               prTTP_5_1->me_5;
+               msTTP_1_2->me_1;
+               msTTP_4_1->me_4;
+               msTTP_4_2->me_4;
+               msTTP_5_1->me_5;
+               rsTTP_1_2->me_1;
+               rsTTP_3_1->me_3;
+               rsTTP_3_2->me_3;
+               rsTTP_4_1->me_4;
+               rsTTP_4_2->me_4;
+               rsTTP_5_1->me_5;
+               spiTTP_1_2->me_1;
+               spiTTP_2_1->me_2;
+               spiTTP_2_2->me_2;
+               spiTTP_3_1->me_3;
+               spiTTP_3_2->me_3;
+               spiTTP_4_1->me_4;
+               spiTTP_4_2->me_4;
+               spiTTP_5_1->me_5;
+       }
+       subgraph connectedBy {
+               vc3TTP_1_2->fabric_1_2;
+               au3CTP_1_2->fabric_1_2;
+               au3CTP_4_1->fabric_4_1;
+               au3CTP_4_2->fabric_4_1;
+               vc3TTP_5_1->fabric_5_1;
+               au3CTP_5_1->fabric_5_1;
+               prTTP_1_2->pg_1_2;
+               prTTP_4_1->pg_4_1;
+               prTTP_4_2->pg_4_2;
+               prTTP_5_1->pg_5_1;
+               prCTP_1_2->pg_1_2;
+               prCTP_4_1->pg_4_1;
+               prCTP_4_2->pg_4_2;
+               prCTP_5_1->pg_5_1;
+       }
+       subgraph crossConnection {
+               edge[style=dotted,dir=none];
+               vc3TTP_1_2->xp_1_2->au3CTP_1_2;
+               prTTP_1_2->pu_1_2->prCTP_1_2;
+               prTTP_4_1->pu_4_1->prCTP_4_1;
+               au3CTP_4_1->xp_4_1->au3CTP_4_2;
+               prTTP_4_2->pu_4_2->prCTP_4_2;
+               prTTP_5_1->pu_5_1->prCTP_5_1;
+               vc3TTP_5_1->xp_5_1->au3CTP_5_1;
+       }
+       subgraph bindingConnection {
+               edge[style=bold,dir=none,weight=100];
+               ds3CTP_1_1->ds3CTP_1_2;
+               vc3TTP_1_2->au3CTP_1_2;
+               prTTP_1_2->prCTP_1_2;
+               msTTP_1_2->msCTP_1_2;
+               rsTTP_1_2->rsCTP_1_2;
+               rsCTP_2_1->rsCTP_2_2;
+               rsTTP_3_1->rsCTP_3_1;
+               msCTP_3_1->msCTP_3_2;
+               rsTTP_3_2->rsCTP_3_2;
+               prTTP_4_1->prCTP_4_1;
+               msTTP_4_1->msCTP_4_1;
+               rsTTP_4_1->rsCTP_4_1;
+               au3CTP_4_1->au3CTP_4_2;
+               prTTP_4_2->prCTP_4_2;
+               msTTP_4_2->msCTP_4_2;
+               rsTTP_4_2->rsCTP_4_2;
+               prTTP_5_1->prCTP_5_1;
+               msTTP_5_1->msCTP_5_1;
+               rsTTP_5_1->rsCTP_5_1;
+               ds3CTP_5_1->ds3CTP_5_2;
+               vc3TTP_5_1->au3CTP_5_1;
+       }
+}
diff --git a/graphs/directed/shells.dot b/graphs/directed/shells.dot
new file mode 100644 (file)
index 0000000..c68458e
--- /dev/null
@@ -0,0 +1,55 @@
+digraph shells {
+       size="7,8";
+       node [fontsize=24, shape = plaintext];
+
+       1972 -> 1976;
+       1976 -> 1978;
+       1978 -> 1980;
+       1980 -> 1982;
+       1982 -> 1984;
+       1984 -> 1986;
+       1986 -> 1988;
+       1988 -> 1990;
+       1990 -> future;
+
+       node [fontsize=20, shape = box];
+       { rank=same;  1976 Mashey Bourne; }
+       { rank=same;  1978 Formshell csh; }
+       { rank=same;  1980 esh vsh; }
+       { rank=same;  1982 ksh "System-V"; }
+       { rank=same;  1984 v9sh tcsh; }
+       { rank=same;  1986 "ksh-i"; }
+       { rank=same;  1988 KornShell Perl rc; }
+       { rank=same;  1990 tcl Bash; }
+       { rank=same;  "future" POSIX "ksh-POSIX"; }
+
+       Thompson -> Mashey;
+       Thompson -> Bourne;
+       Thompson -> csh;
+       csh -> tcsh;
+       Bourne -> ksh;
+       Bourne -> esh;
+       Bourne -> vsh;
+       Bourne -> "System-V";
+       Bourne -> v9sh;
+       v9sh -> rc;
+       Bourne -> Bash;
+       "ksh-i" -> Bash;
+       KornShell -> Bash;
+       esh -> ksh;
+       vsh -> ksh;
+       Formshell -> ksh;
+       csh -> ksh;
+       KornShell -> POSIX;
+       "System-V" -> POSIX;
+       ksh -> "ksh-i";
+       "ksh-i" -> KornShell;
+       KornShell -> "ksh-POSIX";
+       Bourne -> Formshell;
+
+       edge [style=invis];
+       1984 -> v9sh -> tcsh ;
+       1988 -> rc -> KornShell;
+       Formshell -> csh;
+       KornShell -> Perl;
+}
diff --git a/graphs/directed/states.dot b/graphs/directed/states.dot
new file mode 100644 (file)
index 0000000..758abc9
--- /dev/null
@@ -0,0 +1,21 @@
+/*
+The command line is
+
+  dot -Tps -Grankdir=LR states.dot > states.ps
+
+and the file is:
+*/
+digraph states {
+    size="3,2";
+       rankdir=LR;
+    node [shape=ellipse];
+    empty [label = "Empty"];
+    stolen [label = "Stolen"];
+    waiting [label = "Waiting"];
+    full [label = "Full"];
+    empty -> full [label = "return"]
+    empty -> stolen [label = "dispatch", wt=28]
+    stolen -> full [label = "return"];
+    stolen -> waiting [label = "touch"];
+    waiting -> full [label = "return"];
+  }
diff --git a/graphs/directed/structs.dot b/graphs/directed/structs.dot
new file mode 100644 (file)
index 0000000..ab83312
--- /dev/null
@@ -0,0 +1,8 @@
+digraph structs {
+node [shape=record];
+    struct1 [shape=record,label="<f0> left|<f1> middle|<f2> right"];
+    struct2 [shape=record,label="<f0> one|<f1> two"];
+    struct3 [shape=record,label="hello\nworld |{ b |{c|<here> d|e}| f}| g | h"];
+    struct1:f1 -> struct2:f0;
+    struct1:f2 -> struct3:here;
+}
diff --git a/graphs/directed/switch.dot b/graphs/directed/switch.dot
new file mode 100644 (file)
index 0000000..431ba48
--- /dev/null
@@ -0,0 +1,60 @@
+digraph G {
+       graph [center rankdir=LR bgcolor="#808080"]
+       edge [dir=none]
+       node [width=0.3 height=0.3 label=""]
+       { node [shape=circle style=invis]
+               1 2 3 4 5 6 7 8  10 20 30 40 50 60 70 80
+       }
+       { node [shape=circle]
+               a b c d e f g h  i j k l m n o p  q r s t u v w x
+       }
+       { node [shape=diamond]
+               A B C D E F G H  I J K L M N O P  Q R S T U V W X
+       }
+       1 -> a -> {A B} [color="#0000ff"]
+       2 -> b -> {B A} [color="#ff0000"]
+       3 -> c -> {C D} [color="#ffff00"]
+       4 -> d -> {D C} [color="#00ff00"]
+       5 -> e -> {E F} [color="#000000"]
+       6 -> f -> {F E} [color="#00ffff"]
+       7 -> g -> {G H} [color="#ffffff"]
+       8 -> h -> {H G} [color="#ff00ff"]
+       { edge [color="#ff0000:#0000ff"]
+               A -> i -> {I K}
+               B -> j -> {J L}
+       }
+       { edge [color="#00ff00:#ffff00"]
+               C -> k -> {K I}
+               D -> l -> {L J}
+       }
+       { edge [color="#00ffff:#000000"]
+               E -> m -> {M O}
+               F -> n -> {N P}
+       }
+       { edge [color="#ff00ff:#ffffff"]
+               G -> o -> {O M}
+               H -> p -> {P N}
+       }
+       { edge [color="#00ff00:#ffff00:#ff0000:#0000ff"]
+               I -> q -> {Q U}
+               J -> r -> {R V}
+               K -> s -> {S W}
+               L -> t -> {T X}
+       }
+       { edge [color="#ff00ff:#ffffff:#00ffff:#000000"]
+               M -> u -> {U Q}
+               N -> v -> {V R}
+               O -> w -> {W S}
+               P -> x -> {X T}
+       }
+       { edge [color="#ff00ff:#ffffff:#00ffff:#000000:#00ff00:#ffff00:#ff0000:#0000ff"]
+               Q -> 10
+               R -> 20
+               S -> 30
+               T -> 40
+               U -> 50
+               V -> 60
+               W -> 70
+               X -> 80
+       }
+}
diff --git a/graphs/directed/table.dot b/graphs/directed/table.dot
new file mode 100644 (file)
index 0000000..2a81d9f
--- /dev/null
@@ -0,0 +1,57 @@
+digraph structs {
+    node [shape=plaintext];
+
+    struct1 [label=<<TABLE CELLPADDING="10" BORDER="0">
+       <TR>
+           <TD HEIGHT="30" WIDTH="90">a</TD>
+           <TD>b</TD>
+           <TD>c</TD>
+       </TR>
+    </TABLE>>];
+
+    struct2 [label=<<TABLE>
+       <TR>
+           <TD COLSPAN="3">elefantel</TD>
+           <TD ROWSPAN="2" VALIGN="bottom" ALIGN="right">two</TD>
+       </TR><TR>
+           <TD COLSPAN="2" ROWSPAN="2"><TABLE BGCOLOR="grey">
+               <TR>
+                   <TD>buca</TD>
+               </TR><TR>
+                   <TD BGCOLOR="yellow">c</TD>
+               </TR><TR>
+                   <TD>f</TD>
+               </TR>
+           </TABLE></TD>
+           <TD>patratos</TD>
+       </TR><TR>
+           <TD COLSPAN="2" ALIGN="right">4</TD>
+       </TR>
+       </TABLE>
+    >];
+
+    struct3 [label=<<TABLE CELLPADDING="5">
+       <TR>
+           <TD ROWSPAN="3">Hello</TD>
+           <TD ROWSPAN="2" COLSPAN="3"><TABLE BORDER="4">
+               <TR>
+                   <TD COLSPAN="3">b</TD>
+               </TR><TR>
+                   <TD>a</TD>
+                   <TD>dino</TD>
+                   <TD>y</TD>
+               </TR><TR>
+                   <TD COLSPAN="3">rhino</TD>
+               </TR>
+           </TABLE></TD>
+       </TR><TR>
+           <TD COLSPAN="2">climb</TD>
+           <TD ROWSPAN="2">Up</TD>
+       </TR><TR>
+           <TD COLSPAN="3">low</TD>
+       </TR>
+    </TABLE>>];
+
+    struct1 -> struct3;
+    struct1 -> struct2;
+}
diff --git a/graphs/directed/train11.dot b/graphs/directed/train11.dot
new file mode 100644 (file)
index 0000000..710645d
--- /dev/null
@@ -0,0 +1,30 @@
+digraph G {
+       size="6,6";
+       node [shape=circle,fontsize=8];
+       rankdir=LR;
+       st9 -> st9 [label="11/1"];
+       st9 -> st10 [label="10/1"];
+       st8 -> st8 [label="10/1"];
+       st8 -> st0 [label="00/-"];
+       st7 -> st8 [label="10/1"];
+       st7 -> st7 [label="00/1"];
+       st6 -> st6 [label="01/1"];
+       st6 -> st0 [label="00/-"];
+       st5 -> st6 [label="01/1"];
+       st5 -> st5 [label="11/1"];
+       st4 -> st4 [label="01/1"];
+       st4 -> st0 [label="00/-"];
+       st3 -> st4 [label="01/1"];
+       st3 -> st3 [label="00/1"];
+       st2 -> st9 [label="11/1"];
+       st2 -> st7 [label="00/1"];
+       st2 -> st2 [label="01/1"];
+       st10 -> st10 [label="10/1"];
+       st10 -> st0 [label="00/-"];
+       st1 -> st5 [label="11/1"];
+       st1 -> st3 [label="00/1"];
+       st1 -> st1 [label="10/1"];
+       st0 -> st2 [label="01/-"];
+       st0 -> st1 [label="10/-"];
+       st0 -> st0 [label="00/0"];
+}
diff --git a/graphs/directed/trapeziumlr.dot b/graphs/directed/trapeziumlr.dot
new file mode 100644 (file)
index 0000000..ccd3c42
--- /dev/null
@@ -0,0 +1,79 @@
+digraph test {
+
+    size="7,9.5";
+    page="8,10.5";
+    ratio=fill;
+    rankdir=LR;
+
+    { rank=same;
+      node [shape=house];
+      A;C;E;G;I;K;M;O;Q;S;U;W;Y;
+      node [shape=invhouse];
+      B;D;F;H;J;L;N;P;R;T;V;X;Z;
+    }
+
+    { rank=same;
+      node [shape=trapezium];
+      "Trapezium";
+      ordering=out;
+    }
+
+    Trapezium -> A;
+    Trapezium -> B;
+    Trapezium -> C;
+    Trapezium -> D;
+    Trapezium -> E;
+    Trapezium -> F;
+    Trapezium -> G;
+    Trapezium -> H;
+    Trapezium -> I;
+    Trapezium -> J;
+    Trapezium -> K;
+    Trapezium -> L;
+    Trapezium -> M;
+    Trapezium -> N;
+    Trapezium -> O;
+    Trapezium -> P;
+    Trapezium -> Q;
+    Trapezium -> R;
+    Trapezium -> S;
+    Trapezium -> T;
+    Trapezium -> U;
+    Trapezium -> V;
+    Trapezium -> W;
+    Trapezium -> X;
+    Trapezium -> Y;
+    Trapezium -> Z;
+
+    { rank=same;
+      node [shape=parallelogram];
+      a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;z;
+    }
+
+    a -> Trapezium;
+    b -> Trapezium;
+    c -> Trapezium;
+    d -> Trapezium;
+    e -> Trapezium;
+    f -> Trapezium;
+    g -> Trapezium;
+    h -> Trapezium;
+    i -> Trapezium;
+    j -> Trapezium;
+    k -> Trapezium;
+    l -> Trapezium;
+    m -> Trapezium;
+    n -> Trapezium;
+    o -> Trapezium;
+    p -> Trapezium;
+    q -> Trapezium;
+    r -> Trapezium;
+    s -> Trapezium;
+    t -> Trapezium;
+    u -> Trapezium;
+    v -> Trapezium;
+    w -> Trapezium;
+    x -> Trapezium;
+    y -> Trapezium;
+    z -> Trapezium;
+}
diff --git a/graphs/directed/tree.dot b/graphs/directed/tree.dot
new file mode 100644 (file)
index 0000000..6d2c60c
--- /dev/null
@@ -0,0 +1,20 @@
+digraph g {
+node [shape = record,height=.1];
+node0[label = "<f0> |<f1> G|<f2> "];
+node1[label = "<f0> |<f1> E|<f2> "];
+node2[label = "<f0> |<f1> B|<f2> "];
+node3[label = "<f0> |<f1> F|<f2> "];
+node4[label = "<f0> |<f1> R|<f2> "];
+node5[label = "<f0> |<f1> H|<f2> "];
+node6[label = "<f0> |<f1> Y|<f2> "];
+node7[label = "<f0> |<f1> A|<f2> "];
+node8[label = "<f0> |<f1> C|<f2> "];
+"node0":f2 -> "node4":f1;
+"node0":f0 -> "node1":f1;
+"node1":f0 -> "node2":f1;
+"node1":f2 -> "node3":f1;
+"node2":f2 -> "node8":f1;
+"node2":f0 -> "node7":f1;
+"node4":f2 -> "node6":f1;
+"node4":f0 -> "node5":f1;
+}
diff --git a/graphs/directed/triedds.dot b/graphs/directed/triedds.dot
new file mode 100644 (file)
index 0000000..e68eb33
--- /dev/null
@@ -0,0 +1,114 @@
+digraph g {
+graph [
+rankdir = "LR"
+];
+node [
+fontsize = "16"
+shape = "ellipse"
+];
+edge [
+];
+"node0" [
+label = "<f0> 0x10ba8| <f1>"
+shape = "record"
+];
+"node1" [
+label = "<f0> 0xf7fc4380| <f1> | <f2> |-1"
+shape = "record"
+];
+"node2" [
+label = "<f0> 0xf7fc44b8| | |2"
+shape = "record"
+];
+"node3" [
+label = "<f0> 3.43322790286038071e-06|44.79998779296875|0"
+shape = "record"
+];
+"node4" [
+label = "<f0> 0xf7fc4380| <f1> | <f2> |2"
+shape = "record"
+];
+"node5" [
+label = "<f0> (nil)| | |-1"
+shape = "record"
+];
+"node6" [
+label = "<f0> 0xf7fc4380| <f1> | <f2> |1"
+shape = "record"
+];
+"node7" [
+label = "<f0> 0xf7fc4380| <f1> | <f2> |2"
+shape = "record"
+];
+"node8" [
+label = "<f0> (nil)| | |-1"
+shape = "record"
+];
+"node9" [
+label = "<f0> (nil)| | |-1"
+shape = "record"
+];
+"node10" [
+label = "<f0> (nil)| <f1> | <f2> |-1"
+shape = "record"
+];
+"node11" [
+label = "<f0> (nil)| <f1> | <f2> |-1"
+shape = "record"
+];
+"node12" [
+label = "<f0> 0xf7fc43e0| | |1"
+shape = "record"
+];
+"node0":f0 -> "node1":f0 [
+id = 0
+];
+"node0":f1 -> "node2":f0 [
+id = 1
+];
+"node1":f0 -> "node3":f0 [
+id = 2
+];
+"node1":f1 -> "node4":f0 [
+id = 3
+];
+"node1":f2 -> "node5":f0 [
+id = 4
+];
+"node4":f0 -> "node3":f0 [
+id = 5
+];
+"node4":f1 -> "node6":f0 [
+id = 6
+];
+"node4":f2 -> "node10":f0 [
+id = 7
+];
+"node6":f0 -> "node3":f0 [
+id = 8
+];
+"node6":f1 -> "node7":f0 [
+id = 9
+];
+"node6":f2 -> "node9":f0 [
+id = 10
+];
+"node7":f0 -> "node3":f0 [
+id = 11
+];
+"node7":f1 -> "node1":f0 [
+id = 12
+];
+"node7":f2 -> "node8":f0 [
+id = 13
+];
+"node10":f1 -> "node11":f0 [
+id = 14
+];
+"node10":f2 -> "node12":f0 [
+id = 15
+];
+"node11":f2 -> "node1":f0 [
+id = 16
+];
+}
diff --git a/graphs/directed/try.dot b/graphs/directed/try.dot
new file mode 100644 (file)
index 0000000..37bc829
--- /dev/null
@@ -0,0 +1,15 @@
+digraph G {
+       subgraph cluster_small {
+               a -> b;
+               label=small;
+       }
+
+       subgraph cluster_big {
+               p -> q -> r -> s -> t;
+               label=big;
+               t -> p;
+       }
+
+       t -> a;
+       b -> q;
+}
diff --git a/graphs/directed/unix.dot b/graphs/directed/unix.dot
new file mode 100644 (file)
index 0000000..6de8f6d
--- /dev/null
@@ -0,0 +1,53 @@
+/* courtesy Ian Darwin and Geoff Collyer, Softquad Inc. */
+digraph unix {
+size="6,6";
+       "5th Edition" -> "6th Edition";
+       "5th Edition" -> "PWB 1.0";
+       "6th Edition" -> "LSX";
+       "6th Edition" -> "1 BSD";
+       "6th Edition" -> "Mini Unix";
+       "6th Edition" -> "Wollongong";
+       "6th Edition" -> "Interdata";
+       "Interdata" -> "Unix/TS 3.0";
+       "Interdata" -> "PWB 2.0";
+       "Interdata" -> "7th Edition";
+       "7th Edition" -> "8th Edition";
+       "7th Edition" -> "32V";
+       "7th Edition" -> "V7M";
+       "7th Edition" -> "Ultrix-11";
+       "7th Edition" -> "Xenix";
+       "7th Edition" -> "UniPlus+";
+       "V7M" -> "Ultrix-11";
+       "8th Edition" -> "9th Edition";
+       "1 BSD" -> "2 BSD";
+       "2 BSD" -> "2.8 BSD";
+       "2.8 BSD" -> "Ultrix-11";
+       "2.8 BSD" -> "2.9 BSD";
+       "32V" -> "3 BSD";
+       "3 BSD" -> "4 BSD";
+       "4 BSD" -> "4.1 BSD";
+       "4.1 BSD" -> "4.2 BSD";
+       "4.1 BSD" -> "2.8 BSD";
+       "4.1 BSD" -> "8th Edition";
+       "4.2 BSD" -> "4.3 BSD";
+       "4.2 BSD" -> "Ultrix-32";
+       "PWB 1.0" -> "PWB 1.2";
+       "PWB 1.0" -> "USG 1.0";
+       "PWB 1.2" -> "PWB 2.0";
+       "USG 1.0" -> "CB Unix 1";
+       "USG 1.0" -> "USG 2.0";
+       "CB Unix 1" -> "CB Unix 2";
+       "CB Unix 2" -> "CB Unix 3";
+       "CB Unix 3" -> "Unix/TS++";
+       "CB Unix 3" -> "PDP-11 Sys V";
+       "USG 2.0" -> "USG 3.0";
+       "USG 3.0" -> "Unix/TS 3.0";
+       "PWB 2.0" -> "Unix/TS 3.0";
+       "Unix/TS 1.0" -> "Unix/TS 3.0";
+       "Unix/TS 3.0" -> "TS 4.0";
+       "Unix/TS++" -> "TS 4.0";
+       "CB Unix 3" -> "TS 4.0";
+       "TS 4.0" -> "System V.0";
+       "System V.0" -> "System V.2";
+       "System V.2" -> "System V.3";
+}
diff --git a/graphs/directed/unix2.dot b/graphs/directed/unix2.dot
new file mode 100644 (file)
index 0000000..25a74a5
--- /dev/null
@@ -0,0 +1,63 @@
+/* Courtesy of Ian Darwin <ian@darwinsys.com>
+ * and Geoff Collyer <geoff@plan9.bell-labs.com>
+ * Mildly updated by Ian Darwin in 2000.
+ */
+digraph unix {
+       size="6,6";
+       node [color=lightblue2, style=filled];
+       "5th Edition" -> "6th Edition";
+       "5th Edition" -> "PWB 1.0";
+       "6th Edition" -> "LSX";
+       "6th Edition" -> "1 BSD";
+       "6th Edition" -> "Mini Unix";
+       "6th Edition" -> "Wollongong";
+       "6th Edition" -> "Interdata";
+       "Interdata" -> "Unix/TS 3.0";
+       "Interdata" -> "PWB 2.0";
+       "Interdata" -> "7th Edition";
+       "7th Edition" -> "8th Edition";
+       "7th Edition" -> "32V";
+       "7th Edition" -> "V7M";
+       "7th Edition" -> "Ultrix-11";
+       "7th Edition" -> "Xenix";
+       "7th Edition" -> "UniPlus+";
+       "V7M" -> "Ultrix-11";
+       "8th Edition" -> "9th Edition";
+       "9th Edition" -> "10th Edition";
+       "1 BSD" -> "2 BSD";
+       "2 BSD" -> "2.8 BSD";
+       "2.8 BSD" -> "Ultrix-11";
+       "2.8 BSD" -> "2.9 BSD";
+       "32V" -> "3 BSD";
+       "3 BSD" -> "4 BSD";
+       "4 BSD" -> "4.1 BSD";
+       "4.1 BSD" -> "4.2 BSD";
+       "4.1 BSD" -> "2.8 BSD";
+       "4.1 BSD" -> "8th Edition";
+       "4.2 BSD" -> "4.3 BSD";
+       "4.2 BSD" -> "Ultrix-32";
+       "4.3 BSD" -> "4.4 BSD";
+       "4.4 BSD" -> "FreeBSD";
+       "4.4 BSD" -> "NetBSD";
+       "4.4 BSD" -> "OpenBSD";
+       "PWB 1.0" -> "PWB 1.2";
+       "PWB 1.0" -> "USG 1.0";
+       "PWB 1.2" -> "PWB 2.0";
+       "USG 1.0" -> "CB Unix 1";
+       "USG 1.0" -> "USG 2.0";
+       "CB Unix 1" -> "CB Unix 2";
+       "CB Unix 2" -> "CB Unix 3";
+       "CB Unix 3" -> "Unix/TS++";
+       "CB Unix 3" -> "PDP-11 Sys V";
+       "USG 2.0" -> "USG 3.0";
+       "USG 3.0" -> "Unix/TS 3.0";
+       "PWB 2.0" -> "Unix/TS 3.0";
+       "Unix/TS 1.0" -> "Unix/TS 3.0";
+       "Unix/TS 3.0" -> "TS 4.0";
+       "Unix/TS++" -> "TS 4.0";
+       "CB Unix 3" -> "TS 4.0";
+       "TS 4.0" -> "System V.0";
+       "System V.0" -> "System V.2";
+       "System V.2" -> "System V.3";
+       "System V.3" -> "System V.4";
+}
diff --git a/graphs/directed/viewfile.dot b/graphs/directed/viewfile.dot
new file mode 100644 (file)
index 0000000..ec316d2
--- /dev/null
@@ -0,0 +1,64 @@
+digraph Viewfile {
+node [ style = filled ];
+atoi [color=green];
+chkmalloc [color=green];
+close [color=green];
+error [color=blue];
+exit [color=blue];
+fclose [color=green];
+fgets [color=red];
+fopen [color=green];
+fprintf [color=blue];
+free [color=blue];
+free_list [color=blue];
+fstat [color=green];
+getopt [color=green];
+init_list [color=green];
+insert_list [color=green];
+main [color=green];
+makeargs [color=blue];
+makepairs [color=green];
+malloc [color=green];
+open [color=green];
+printf [color=red];
+read [color=green];
+rewind [color=green];
+viewline [color=green];
+viewlines [color=green];
+walk_list [color=green];
+write [color=green];
+fclose -> close [color=green];
+fgets -> fstat [color=green];
+fgets -> read [color=green];
+fopen -> open [color=green];
+printf -> write [color=green];
+main -> fgets [color=blue];
+main -> getopt [color=green];
+main -> makeargs [color=blue];
+main -> makepairs [color=green];
+main -> chkmalloc [color=green];
+main -> error [color=blue];
+main -> viewlines [color=green];
+makeargs -> chkmalloc [color=blue];
+makepairs -> atoi [color=green];
+makepairs -> init_list [color=green];
+makepairs -> insert_list [color=green];
+makepairs -> chkmalloc [color=green];
+free_list -> free [color=blue];
+init_list -> chkmalloc [color=green];
+insert_list -> chkmalloc [color=green];
+walk_list -> error [color=blue];
+walk_list -> viewline [color=green];
+chkmalloc -> malloc [color=green];
+chkmalloc -> error [color=blue];
+error -> exit [color=blue];
+error -> fprintf [color=blue];
+error -> error [color=blue];
+viewline -> fgets [color=red];
+viewline -> printf [color=red];
+viewline -> rewind [color=green];
+viewlines -> fclose [color=green];
+viewlines -> fopen [color=green];
+viewlines -> walk_list [color=green];
+viewlines -> viewline [color=blue];
+}
diff --git a/graphs/directed/world.dot b/graphs/directed/world.dot
new file mode 100644 (file)
index 0000000..3e6e4e3
--- /dev/null
@@ -0,0 +1,67 @@
+digraph world {
+size="7,7";
+       {rank=same; S8 S24 S1 S35 S30;}
+       {rank=same; T8 T24 T1 T35 T30;}
+       {rank=same; 43 37 36 10 2;}
+       {rank=same; 25 9 38 40 13 17 12 18;}
+       {rank=same; 26 42 11 3 33 19 39 14 16;}
+       {rank=same; 4 31 34 21 41 28 20;}
+       {rank=same; 27 5 22 32 29 15;}
+       {rank=same; 6 23;}
+       {rank=same; 7;}
+
+       S8 -> 9;
+       S24 -> 25;
+       S24 -> 27;
+       S1 -> 2;
+       S1 -> 10;
+       S35 -> 43;
+       S35 -> 36;
+       S30 -> 31;
+       S30 -> 33;
+       9 -> 42;
+       9 -> T1;
+       25 -> T1;
+       25 -> 26;
+       27 -> T24;
+       2 -> {3 ; 16 ; 17 ; T1 ; 18}
+       10 -> { 11 ; 14 ; T1 ; 13; 12;}
+       31 -> T1;
+       31 -> 32;
+       33 -> T30;
+       33 -> 34;
+       42 -> 4;
+       26 -> 4;
+       3 -> 4;
+       16 -> 15;
+       17 -> 19;
+       18 -> 29;
+       11 -> 4;
+       14 -> 15;
+       37 -> {39 ; 41 ; 38 ; 40;}
+       13 -> 19;
+       12 -> 29;
+       43 -> 38;
+       43 -> 40;
+       36 -> 19;
+       32 -> 23;
+       34 -> 29;
+       39 -> 15;
+       41 -> 29;
+       38 -> 4;
+       40 -> 19;
+       4 -> 5;
+       19 -> {21 ; 20 ; 28;}
+       5 -> {6 ; T35 ; 23;}
+       21 -> 22;
+       20 -> 15;
+       28 -> 29;
+       6 -> 7;
+       15 -> T1;
+       22 -> T35;
+       22 -> 23;
+       29 -> T30;
+       7 -> T8;
+       23 -> T24;
+       23 -> T1;
+}
diff --git a/graphs/undirected/.cvsignore b/graphs/undirected/.cvsignore
new file mode 100644 (file)
index 0000000..58ec2e6
--- /dev/null
@@ -0,0 +1,9 @@
+*.la
+*.lo
+.deps
+.libs
+.xvpics
+Makefile
+Makefile.in
+*.dot.*
+node*.png
diff --git a/graphs/undirected/ER.dot b/graphs/undirected/ER.dot
new file mode 100644 (file)
index 0000000..55060f2
--- /dev/null
@@ -0,0 +1,22 @@
+graph ER {
+       node [shape=box]; course; institute; student;
+       node [shape=ellipse]; {node [label="name"] name0; name1; name2;}
+               code; grade; number;
+       node [shape=diamond,style=filled,color=lightgrey]; "C-I"; "S-C"; "S-I";
+
+       name0 -- course;
+       code -- course;
+       course -- "C-I" [label="n",len=1.00];
+       "C-I" -- institute [label="1",len=1.00];
+       institute -- name1;
+       institute -- "S-I" [label="1",len=1.00];
+       "S-I" -- student [label="n",len=1.00];
+       student -- grade;
+       student -- name2;
+       student -- number;
+       student -- "S-C" [label="m",len=1.00];
+       "S-C" -- course [label="n",len=1.00];
+
+       label = "\n\nEntity Relation Diagram\ndrawn by NEATO";
+       fontsize=20;
+}
diff --git a/graphs/undirected/Heawood.dot b/graphs/undirected/Heawood.dot
new file mode 100644 (file)
index 0000000..17fac56
--- /dev/null
@@ -0,0 +1,31 @@
+/*
+ * The transitive 6-net, also known as Heawood's graph,
+ * can be used to test the "stability points" of the layout
+ * algorithm.
+
+ * The "ideal" layout occurs when len="2.5". The layout
+ * loses the regularity when smaller values are used.
+ */
+graph "Heawood" {
+       node [
+               fontname = "Arial"
+               label = "\N"
+               shape = "circle"
+               width = "0.50000"
+               height = "0.500000"
+               color = "black"
+       ]
+       edge [
+               color = "black"
+       ]
+       /* The outer wheel */
+       "0" -- "1" -- "2" -- "3" -- "4" -- "5" -- "6" -- "7" -- "8" -- "9" -- "10" -- "11" -- "12" -- "13" -- "0";
+       /* The internal edges. The len = makes them internal */
+       "0" -- "5" [len = 2.5];
+       "2" -- "7" [len = 2.5];
+       "4" -- "9" [len = 2.5];
+       "6" -- "11" [len = 2.5];
+       "8" -- "13" [len = 2.5];
+       "10" -- "1" [len = 2.5];
+       "12" -- "3" [len = 2.5];
+}
diff --git a/graphs/undirected/Makefile.am b/graphs/undirected/Makefile.am
new file mode 100644 (file)
index 0000000..13a08ab
--- /dev/null
@@ -0,0 +1,158 @@
+## Process this file with automake to produce Makefile.in
+
+GRAPHS = ER.dot ngk10_4.dot process.dot Heawood.dot Petersen.dot
+
+graphdir = $(pkgdatadir)/graphs
+undirecteddir = $(graphdir)/undirected
+undirected_DATA = $(GRAPHS)
+
+EXTRA_DIST = $(GRAPHS)
+
+CLEANFILES = core *.dot.* *.png .xvpics/* 
+
+test:
+       for i in $(GRAPHS); do \
+               echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato \
+                       -Tcanon -o$$i.canon \
+                       -Tcmap -o$$i.cmap \
+                       -Tcmapx -o$$i.cmapx \
+                       -Tdia -o$$i.dia \
+                       -Tdot -o$$i.dot \
+                       -Tfig -o$$i.fig \
+                       -Tgd -o$$i.gd \
+                       -Tgd2 -o$$i.gd2 \
+                       -Tgif -o$$i.gif \
+                       -Thpgl -o$$i.hpgl \
+                       -Tismap -o$$i.ismap \
+                       -Timap -o$$i.imap \
+                       -Tjpg -o$$i.jpg \
+                       -Tmif -o$$i.mif \
+                       -Tmp -o$$i.mp \
+                       -Tpcl -o$$i.pcl \
+                       -Tpic -o$$i.pic \
+                       -Tplain -o$$i.plain \
+                       -Tplain-ext -o$$i.plain-ext \
+                       -Tpng -o$$i.png \
+                       -Tps -o$$i.ps \
+                       -Tps2 -o$$i.ps2 \
+                       -Tsvg -o$$i.svg \
+                       -Tsvgz -o$$i.svgz \
+                       -Twbmp -o$$i.wbmp \
+                       -Tvrml -o$$i.vrml \
+                       -Tvtx -o$$i.vtx \
+                       -Txdot -o$$i.xdot \
+                               $(top_srcdir)/graphs/undirected/$$i; \
+       done
+
+canon:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tcanon -o$$i.canon $(top_srcdir)/graphs/undirected/$$i; done
+
+cmap:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tcmap -o$$i.cmap $(top_srcdir)/graphs/undirected/$$i; done
+
+cmapx:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tcmapx -o$$i.cmapx $(top_srcdir)/graphs/undirected/$$i; done
+
+dia:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tdia -o$$i.dia $(top_srcdir)/graphs/undirected/$$i; done
+
+dot:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tdot -o$$i.dot $(top_srcdir)/graphs/undirected/$$i; done
+
+fig:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tfig -o$$i.fig $(top_srcdir)/graphs/undirected/$$i; done
+
+gd:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tgd -o$$i.gd $(top_srcdir)/graphs/undirected/$$i; done
+
+gd2:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tgd2 -o$$i.gd2 $(top_srcdir)/graphs/undirected/$$i; done
+
+gif:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tgif -o$$i.gif $(top_srcdir)/graphs/undirected/$$i; done
+
+hpgl:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Thpgl -o$$i.hpgl $(top_srcdir)/graphs/undirected/$$i; done
+
+ismap:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tismap -o$$i.ismap $(top_srcdir)/graphs/undirected/$$i; done
+
+imap:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Timap -o$$i.imap $(top_srcdir)/graphs/undirected/$$i; done
+
+jpg:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tjpg -o$$i.jpg $(top_srcdir)/graphs/undirected/$$i; done
+
+mif:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tmif -o$$i.mif $(top_srcdir)/graphs/undirected/$$i; done
+
+mp:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tmp -o$$i.mp $(top_srcdir)/graphs/undirected/$$i; done
+
+pcl:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tpcl -o$$i.pcl $(top_srcdir)/graphs/undirected/$$i; done
+
+pic:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tpic -o$$i.pic $(top_srcdir)/graphs/undirected/$$i; done
+
+plain:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tplain -o$$i.plain $(top_srcdir)/graphs/undirected/$$i; done
+
+plain-ext:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tplain-ext -o$$i.plain-ext $(top_srcdir)/graphs/undirected/$$i; done
+
+png:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tpng -o$$i.png $(top_srcdir)/graphs/undirected/$$i; done
+
+ps:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tps -o$$i.ps $(top_srcdir)/graphs/undirected/$$i; done
+
+ps2:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tps2 -o$$i.ps2 $(top_srcdir)/graphs/undirected/$$i; done
+
+svg:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tsvg -o$$i.svg $(top_srcdir)/graphs/undirected/$$i; done
+
+svgz:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tsvgz -o$$i.svgz $(top_srcdir)/graphs/undirected/$$i; done
+
+wbmp:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Twbmp -o$$i.wbmp $(top_srcdir)/graphs/undirected/$$i; done
+
+vrml:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tvrml -o$$i.vrml $(top_srcdir)/graphs/undirected/$$i; done
+
+vtx:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Tvtx -o$$i.vtx $(top_srcdir)/graphs/undirected/$$i; done
+
+xdot:
+       for i in $(GRAPHS); do echo "neato $$i"; \
+               $(top_builddir)/dotneato/neato -Txdot -o$$i.xdot $(top_srcdir)/graphs/undirected/$$i; done
diff --git a/graphs/undirected/Petersen.dot b/graphs/undirected/Petersen.dot
new file mode 100644 (file)
index 0000000..09d0001
--- /dev/null
@@ -0,0 +1,48 @@
+/*
+ * The transitive 5-net, also known as Petersen's graph,
+ * can be used to test the "stability points" of the layout
+ * algorithm.
+ * 
+ * The "ideal" layout is achieved for certain random seed
+ * values when len=1.5.  For len=2.5 or above, the layout
+ * is stable. Sometimes, the graph is rendered "inside-out".
+ */ 
+graph "Petersen" {
+       node [
+               fontname = "Arial"
+               label = "\N"
+               shape = "circle"
+               width = "0.400000"
+               height = "0.400000"
+               color = "black"
+       ]
+       edge [
+               color = "black"
+       ]
+       /* Outer wheel. The len= is what makes it outer */
+       "0" -- "1" -- "2" -- "3" -- "4" -- "0" [
+               color = "blue"
+               len = 2.6
+       ]
+       "0" -- "5" [
+               color = "red"
+               weight = "5"
+       ]
+       "1" -- "6" [
+               color = "red"
+               weight = "5"
+       ]
+       "2" -- "7" [
+               color = "red"
+               weight = "5"
+       ]
+       "3" -- "8" [
+               color = "red"
+               weight = "5"
+       ]
+       "4" -- "9" [
+               color = "red"
+               weight = "5"
+       ]
+       "5" -- "7" -- "9" -- "6" -- "8" -- "5";
+}
diff --git a/graphs/undirected/ngk10_4.dot b/graphs/undirected/ngk10_4.dot
new file mode 100644 (file)
index 0000000..d99e7f4
--- /dev/null
@@ -0,0 +1,103 @@
+graph G {
+       graph [splines=true overlap=false]
+       1 -- 30 [f=1];
+       1 -- 40 [f=14];
+       8 -- 46 [f=1];
+       8 -- 16 [f=18];
+       10 -- 25 [f=1];
+       10 -- 19 [f=5];
+       10 -- 33 [f=1];
+       12 -- 8 [f=1];
+       12 -- 36 [f=5];
+       12 -- 17 [f=16];
+       13 -- 38 [f=1];
+       13 -- 24 [f=19];
+       24 -- 49 [f=1];
+       24 -- 13 [f=1];
+       24 -- 47 [f=12];
+       24 -- 12 [f=19];
+       25 -- 27 [f=1];
+       25 -- 12 [f=1];
+       27 -- 12 [f=1];
+       27 -- 14 [f=8];
+       29 -- 10 [f=1];
+       29 -- 8 [f=17];
+       30 -- 24 [f=1];
+       30 -- 44 [f=15];
+       38 -- 29 [f=1];
+       38 -- 35 [f=15];
+       2 -- 42 [f=2];
+       2 -- 35 [f=3];
+       2 -- 11 [f=19];
+       14 -- 18 [f=2];
+       14 -- 24 [f=15];
+       14 -- 38 [f=18];
+       18 -- 49 [f=2];
+       18 -- 47 [f=20];
+       26 -- 41 [f=2];
+       26 -- 42 [f=15];
+       31 -- 39 [f=2];
+       31 -- 47 [f=17];
+       31 -- 25 [f=14];
+       37 -- 26 [f=2];
+       37 -- 16 [f=14];
+       39 -- 50 [f=2];
+       39 -- 14 [f=2];
+       39 -- 18 [f=17];
+       39 -- 47 [f=10];
+       41 -- 31 [f=2];
+       41 -- 8 [f=16];
+       42 -- 44 [f=2];
+       42 -- 29 [f=12];
+       44 -- 37 [f=2];
+       44 -- 32 [f=15];
+       3 -- 20 [f=2];
+       3 -- 28 [f=19];
+       6 -- 45 [f=2];
+       6 -- 28 [f=10];
+       9 -- 6 [f=2];
+       9 -- 16 [f=1];
+       15 -- 16 [f=2];
+       15 -- 48 [f=2];
+       16 -- 50 [f=2];
+       16 -- 32 [f=14];
+       16 -- 39 [f=8];
+       20 -- 33 [f=2];
+       33 -- 9 [f=2];
+       33 -- 46 [f=3];
+       33 -- 48 [f=17];
+       45 -- 15 [f=2];
+       4 -- 17 [f=4];
+       4 -- 15 [f=6];
+       4 -- 12 [f=16];
+       17 -- 21 [f=4];
+       19 -- 35 [f=4];
+       19 -- 15 [f=9];
+       19 -- 43 [f=4];
+       21 -- 19 [f=4];
+       21 -- 50 [f=4];
+       23 -- 36 [f=4];
+       34 -- 23 [f=4];
+       34 -- 24 [f=11];
+       35 -- 34 [f=4];
+       35 -- 16 [f=6];
+       35 -- 18 [f=16];
+       36 -- 46 [f=4];
+       5 -- 7 [f=1];
+       5 -- 36 [f=6];
+       7 -- 32 [f=1];
+       7 -- 11 [f=2];
+       7 -- 14 [f=17];
+       11 -- 40 [f=1];
+       11 -- 50 [f=1];
+       22 -- 46 [f=1];
+       28 -- 43 [f=1];
+       28 -- 8 [f=18];
+       32 -- 28 [f=1];
+       32 -- 39 [f=13];
+       32 -- 42 [f=15];
+       40 -- 22 [f=1];
+       40 -- 47 [f=1];
+       43 -- 11 [f=1];
+       43 -- 17 [f=19];
+}
diff --git a/graphs/undirected/process.dot b/graphs/undirected/process.dot
new file mode 100644 (file)
index 0000000..34fe9fb
--- /dev/null
@@ -0,0 +1,15 @@
+graph G {
+       run -- intr;
+       intr -- runbl;
+       runbl -- run;
+       run -- kernel;
+       kernel -- zombie;
+       kernel -- sleep;
+       kernel -- runmem;
+       sleep -- swap;
+       swap -- runswap;
+       runswap -- new;
+       runswap -- runmem;
+       new -- runmem;
+       sleep -- runmem;
+}