Graphviz Issue Tracker
Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001164graphvizDotpublic2006-08-03 05:162014-04-08 18:22
ReporterJ. Barnholt 
Assigned Togviz 
PrioritynormalSeverityminorReproducibilityalways
StatusacknowledgedResolutionopen 
PlatformOS*-*-OS Version
Summary0001164: Weird edges within same node rank with rank=same option
Description



The attached input file causes weird edges between the nodes of the lowest rank.
Removing the "rank=same" results in correct placement of the edges.



In an earlier version of GraphViz this worked fine (sorry, don't have this release any more - must have been 2.6 or 2.7 I guess)



This edge rendering quirk makes the result badly readable.
Steps To Reproduce

digraph KSAM_Segment_1038 {
  node [shape=record fontname="Courier" fontsize=9.0];
{
rank=same
9 [label = "{ Master: '' | {

A: : 4 | <S> B: 1588 }\
| { 0000001 | '' | <SI1> X1 }\
| { 0000002 | '00000004000004190000082A' | <SI2> X2 }\
| { 0000003 | '000000040000041900000848' | <SI3> X3 }\
| { 0000004 | '000000040000041900003812' | <SI4> X4 } }" ];
}

 9:SI1:e -> 5 [headport=n arrowsize=0.75];
 9:SI2:e -> 25 [headport=n arrowsize=0.75];
 9:SI3:e -> 10 [headport=n arrowsize=0.75];
 9:SI4:e -> 27 [headport=n arrowsize=0.75];


{
rank=same
5 [label = "{ Master: '00000004 00000419 0000082A' | {

A: : 0 | <S> B: 1824 } }" ];
 5:S -> 25:P [fontname="Courier" fontsize=10.0 arrowsize=0.75 label="S"];
25 [label = "{Master: '00000004 00000419 00000848' | {

A: : 0 | <S> B: 896 } }" ];
 25:P -> 5:S [fontname="Courier" fontsize=10.0 arrowsize=0.75 label="P"];
 25:S -> 10:P [fontname="Courier" fontsize=10.0 arrowsize=0.75 label="S"];
10 [label = "{ Master: '00000004 00000419 00003812' | {

A: : 0 | <S> B: 1860 } }" ];
 10:P -> 25:S [fontname="Courier" fontsize=10.0 arrowsize=0.75 label="P"];
 10:S -> 27:P [fontname="Courier" fontsize=10.0 arrowsize=0.75 label="S"];
27 [label = "{ Master: '' | {

A: : 0 | <S> B: 1846 } }" ];
 27:P -> 10:S [fontname="Courier" fontsize=10.0 arrowsize=0.75 label="P"];
}

}

Additional Information

Great program anyway!
Helps us a lot to debug our various datastructures
TagsNo tags attached.
AUXILLARY-FILES
DATE-FIXED
FIX-COMMENT
FORMER-ID990
INPUT-FILE
OUTPUT-FILEhttp://www.graphviz.org/bugs/b990.png [^]
STATUS-COMMENT*
VERSION     2.9 (31/07/06)
Attached Filesdot file icon edge_flip.dot (Attachment missing)

- Relationships

-  Notes
User avatar (0000725)
hyPiRion (reporter)
2014-04-08 18:22

I've hit the same issue when using html/none shapes with ports along with rank=same.

It seems to activate if multiple nodes of same rank has an edge to another node with same rank as the other nodes. Which ports it uses seems to be irrelevant, and this problem only happens if a from-node is directly right of the to-node. As an example, if you have three nodes A, B and C, all with same rank, then the edges A:pa -> B:pb1; C:pc -> B:pb2; returns a graph which looks like this: "A -> B -> C".

From what I've found out, it seems like the from and to-nodes are switched, but the ports themselves are kept the same. So what I would expect is that the node names are somehow swapped within the source code, for unexpected reasons.

Finally, I managed to find a case where you can verify these assumptions: see edge_flip.dot which I've attached. It works and prints as expected when the line with a comment on is uncommented, but returns warnings about unrecognized ports and prints unexpectedly when the line is commented out.

All of this was discovered using dot - graphviz version 2.26.3 (20100126.1600) on Debian Jessie.

- Issue History
Date Modified Username Field Change
2011-04-28 04:03 user1 New Issue
2011-04-28 04:03 user1 Assigned To => user1
2014-04-08 18:22 hyPiRion Note Added: 0000725
2014-04-08 18:22 hyPiRion File Added: edge_flip.dot


MantisBT 1.2.5[^]
Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker