[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Omaha.pm] [odlug] Re: Nebraska DHHS / PHINMS



> -----Original Message-----
> From: odynug@googlegroups.com [mailto:odynug@googlegroups.com] On
> Behalf Of Jay Hannah
[...]
> On Apr 2, 2013, at 12:11 PM, "Loyall, David" <david.loyall@nebraska.gov>
> wrote:
[...]
> > * some node types appear in "wrong" rank (called column outside of
> graphviz)
> 
> Example?

The top three graphs in the png you posted.  (queues with no service/action pairs pointing at them.)  For my draft printout, I switched go.pl's output format to 'canon', then hand-added "NONE / NONE" nodes to fall where the missing nodes "should have" been, then ran dot map.canon -Tsvg > map.svg .

How would I do that programmatically?

Incidentally, it just took me half an hour to figure out that the $graphviz inside sub add_edge {...} is the *same* $graphviz object that you declared up top.  I mean, I wasn't looking for it, because I am not used to that kind of scope...  Hm.  That's powerful, but I could see it $getting $out $of $hand $quick. ;)

[...]
> > * db.table nodes should be grouped by DB
> 
> Ah. Ya, GraphViz doesn't really let you control node ordering as far as I know.

Sure it does!  Maybe the Graphviz2 library (perl) doesn't.  http://www.graphviz.org/Gallery/directed/cluster.html  Though I must admit that playing with these features is a good way to identify bugs in graphviz.

> So if I really wanted that I'd probably build up your networks in a nested
> hashref first, then loop through that hashref and run Graphviz on each
> terminating node,[]  [...]

Yes, I'd like to learn to do that.  Then, each one could go in a subgraph (cluster).

[...]
> Woot!  :)

Thanks again. :)

Hm, there's a whole class of data-flow-path missing from here.  Oh, there it is: https://github.com/daveloyall/sandbox/commit/9fd3e686fc58807f0a577f3e4c8a89aa23c8b228 :)

--Dave