Number: 1875
Title: Penwidth = 0 could show no line
Submitter: Martin Cleaver
Date: Sun Feb 7 07:23:39 2010
Subsys: Dot
Version: 2.20
System: *-*-
Severity: minor
Problem:
It would be nice if setting a penwidth to zero would cause graphviz to omit the line.

Allowing this as part of the spec would reduce the need to pre-process data.

e.g.


|   | A | B | C |
| A | 1 | 2 | 0 |
| B | 0 | 1 | 3 |
| C | 1 | 0 | 0 |

could be processed to make the following


{
A->A [penwidth=1]
A->B [penwidth=2]
A->C [penwidth=0]
B->A [penwidth=0]
B->B [penwidth=1]
B->C [penwidth=3]
C->A [penwidth=1]
C->B [penwidth=0]
C->C [penwidth=0]
}

I'd want to omit lines where penwidth=0.

Thanks, M.
Comments:
[erg] Well, it almost does that now, except the arrowhead does not disappear. Technically, that is correct, since the body of the edge is drawn as a line, subject to penwidth, while the head is a filled triangle. On the other hand, since the arrow head gets larger with penwidth, one might expect it to get smaller as well.



Also, when dir=both, the arrows at the edge head no longer increase, though the arrow tails still do. Odd.

As a workaround, in the case you have a 0 in your matrix, you may have to emit style=invis instead.
Owner: *
Status: Request