0

I create SVG output with dot. When I set penwidth = 2 for nodes and edges, the arrowheads point slightly inside the boxes. Is there a way to avoid this? Maybe by drawing the nodes after the edges? Or by reducing the length of the edges/arrows to 95%? I've tried to find an attribute that would allow this, but could not find something that worked.

NOTE: Effect can't be seen when converting to png or jpg. Create SVG with dot -Tsvg file.dot > file.svg and view in browser.

This is my dot file:

digraph configure {

  node [
    shape     = box,
    fontname  = "Courier",
    style     = "filled",
    fillcolor = "#cccccc",
    penwidth  = 2
  ];

  A [label = "configure.in"];
  B [label = "autoconf\nGNU m4", fillcolor = ".7 .3 1.0"];
  C [label = "configure"];
  X [label = "cfg.hin", fillcolor = "#eeeeee"];
  Y [label = "cfg.h", fillcolor = "#eeeeee"];

  edge [
    fontname  = "Palatino-Italic",
    fontsize  = 9,
    penwidth  = 2,
    arrowsize = 1
  ];

  A -> B [label = "  is input to"];
  B -> C [label = "  creates"];

  subgraph cfg {
    rank = same;
    rankdir = LR;
    X -> C [label = "is input to  "];
    C -> Y [label = "creates  "];
  }
}
Jens
  • 69,818
  • 15
  • 125
  • 179

0 Answers0