diff --git a/dataflow.cabal b/dataflow.cabal
--- a/dataflow.cabal
+++ b/dataflow.cabal
@@ -1,5 +1,5 @@
 name:                dataflow
-version:             0.3.1.0
+version:             0.3.2.0
 synopsis:            Generate Graphviz documents from a Haskell representation.
 description:         Outputs .dot files that can be processed by the dot
                      command. Currently it only supports the DFD format.
diff --git a/src/DataFlow/Core.hs b/src/DataFlow/Core.hs
--- a/src/DataFlow/Core.hs
+++ b/src/DataFlow/Core.hs
@@ -71,8 +71,8 @@
   writeln ">;"
 
 tag :: String -> String -> Gen () -> Gen ()
-tag t attrs contents = do
-  write $ "<" ++ t ++ (if null attrs then "" else " " ++ attrs) ++ ">"
+tag t a contents = do
+  write $ "<" ++ t ++ (if null a then "" else " " ++ a) ++ ">"
   contents
   write $ "</" ++ t ++ ">"
 
@@ -100,6 +100,6 @@
   withIndent attributes
   writeln [after]
 
-useFont :: ID -> String -> Gen ()
-useFont id' font = objectWith brackets id' $ writeln $ "fontname = \"" ++ font ++ "\";"
+attrs :: ID -> String -> Gen ()
+attrs id' = objectWith brackets id' . writeln
 
diff --git a/src/DataFlow/DFD.hs b/src/DataFlow/DFD.hs
--- a/src/DataFlow/DFD.hs
+++ b/src/DataFlow/DFD.hs
@@ -21,9 +21,9 @@
       mapM_ dfd objects
       blank
       writeln "fontsize = 10;"
-      writeln "fontcolor = gray25;"
+      writeln "fontcolor = grey30;"
       label $ write name
-      writeln "graph[style = dashed];"
+      writeln "graph[style = dashed, color=grey30];"
     writeln "}"
 
   dfd (Process id' name) = objectWith brackets id' $ do
@@ -53,14 +53,16 @@
   dfd (Diagram title objects) = do
     writeln $ "digraph \"" ++ title ++ "\" {"
     withIndent $ do
-      useFont "graph" "sans-serif"
-      useFont "node" "sans-serif"
-      useFont "edge" "sans-serif"
+      attrs "graph" "fontname=\"sans-serif\""
+      attrs "node" "fontname=\"sans-serif\""
+      attrs "edge" "fontname=\"sans-serif\", fontsize=12"
       blank
 
       writeln "labelloc = \"t\";"
       label $ bold $ write title
+      writeln "fontsize = 20;"
 
+      writeln "nodesep = 1;"
       writeln "rankdir = LR;"
 
       mapM_ dfd objects
