Now prints the input index when a node gets multiple input.
authorFrancois Fleuret <francois@fleuret.org>
Fri, 13 Jan 2017 08:08:55 +0000 (09:08 +0100)
committerFrancois Fleuret <francois@fleuret.org>
Fri, 13 Jan 2017 08:08:55 +0000 (09:08 +0100)
dagnn.lua

index ca51841..c17347d 100755 (executable)
--- a/dagnn.lua
+++ b/dagnn.lua
@@ -167,20 +167,25 @@ function DAG:saveDot(filename)
 
    file:write('\n')
 
-   for nnma, node in pairs(self.node) do
+   for nnmb, node in pairs(self.node) do
       file:write(
          '  '
             .. node.index
-            .. ' [shape=box,label=\"' .. torch.type(nnma) .. '\"]'
+            .. ' [shape=box,label=\"' .. torch.type(nnmb) .. '\"]'
             .. '\n'
       )
 
-      for _, nnmb in pairs(node.succ) do
+      for i, nnma in pairs(node.pred) do
+         local decoration = ''
+         if #node.pred > 1 then
+            decoration = ' [label=\"' .. i .. '\"]'
+         end
          file:write(
             '  '
-               .. node.index
+               .. self.node[nnma].index
                .. ' -> '
                .. self.node[nnmb].index
+               .. decoration
                .. '\n'
          )
       end