title: Graphviz edges not discernible / edge labels overwritten
body: <p>I've reduced my problem to the following simple example:</p>
  
  <pre><code>digraph {
  subgraph {rank=same; 0 -&gt; 1 -&gt; 2;}
  0 -&gt; 2 [label="A"];
  2 -&gt; 0 [label="B"];
  }
  </code></pre>
  
  <p>which produces </p>
  
  <p><img src="https://i.stack.imgur.com/g5c7t.png" alt="enter image description here"></p>
  
  <p>While keeping 0, 1 and 2 in the same rank (the original example is in the context of a larger graph), I need A and B edges to be discernible. i.e. the edges to clearly match to labels and the labels to be readable. </p>
  
  <p>One solution I imagined was using ports on the edge connections specified by</p>
  
  <pre><code>0:ne -&gt; 2:nw [label="A"];
  2:sw -&gt; 0:se [label="B"];
  </code></pre>
  
  <p>however this produces</p>
  
  <p><img src="https://i.stack.imgur.com/iVDNb.png" alt="enter image description here"></p>
  
  <p>Other ideas? I am generating larger graphs with the same issue so a best solution would not be a completely ad-hoc manual placement of edges/labels.</p>
  
  <p><strong>Edit</strong>: A (still simplified) example of the larger generated graph is the following.</p>
  
  <pre><code>digraph {
  size = "6,8.5";
  ratio = "fill";
  node [shape = circle];
  node [fontsize = 24];
  edge [fontsize = 24];
  {graph [rank=same]; edge[color=invis];1;}
  {graph [rank=same]; edge[color=invis];2 -&gt; 0 -&gt; 3 -&gt; 4;}
  0 -&gt; 0 [label="6: 0.1764"];
  0 -&gt; 4 [label="4: 0.1304"];
  0 -&gt; 3 [label="5: 0.1551"];
  0 -&gt; 2 [label="7: 0.1489"];
  0 -&gt; 1 [label="Z: 0.3893"];
  4 -&gt; 0 [label="6: 0.1237"];
  4 -&gt; 3 [label="5: 0.05201"];
  4 -&gt; 2 [label="7: 0.15  "];
  4 -&gt; 1 [label="Z: 0.4585"];
  3 -&gt; 0 [label="6: 0.1658"];
  3 -&gt; 4 [label="4: 0.13  "];
  3 -&gt; 3 [label="5: 0.1038"];
  3 -&gt; 2 [label="7: 0.1616"];
  3 -&gt; 1 [label="Z: 0.4388"];
  2 -&gt; 0 [label="6: 0.1661"];
  2 -&gt; 4 [label="4: 0.1295"];
  2 -&gt; 3 [label="5: 0.2078"];
  2 -&gt; 2 [label="7: 0.1406"];
  2 -&gt; 1 [label="Z: 0.356 "];
  1 -&gt; 0 [label="6: 0.1103"];
  1 -&gt; 4 [label="4: 0.2591"];
  1 -&gt; 3 [label="5: 0.1382"];
  1 -&gt; 2 [label="7: 0.08581"];
  1 -&gt; 1 [label="Z: 0.1906"];
  }
  </code></pre>
  
  <p>This produces:</p>
  
  <p><img src="https://i.stack.imgur.com/a226R.png" alt="enter image description here"></p>
  
  <p>which exhibits the same edge/label overlap problem in the simpler example above.</p>
  
  <p>Other notes:</p>
  
  <ul>
  <li>This problem exists when there is a node in the middle of a bidirectionally connected pair of nodes in a same rank subgraph. This may be a subset of conditions where the bug is seen.</li>
  <li>This problem exists also for undirected graphs.</li>
  </ul>