LWN: Comments on "Plotting tools for networks, part I" https://lwn.net/Articles/639998/ This is a special feed containing comments posted to the individual LWN article titled "Plotting tools for networks, part I". en-us Sat, 04 Oct 2025 16:35:41 +0000 Sat, 04 Oct 2025 16:35:41 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net Plotting tools for networks, part I https://lwn.net/Articles/641537/ https://lwn.net/Articles/641537/ ssokolow <div class="FormattedComment"> Some other good tools in a similar vein are:<br> <p> erd (A graphviz-based tool for generating entity resource diagrams from textual descriptions)<br> <a rel="nofollow" href="https://github.com/BurntSushi/erd">https://github.com/BurntSushi/erd</a><br> <p> mscgen (A graphviz-inspired tool for generating message sequence charts from textual descriptions)<br> <a rel="nofollow" href="http://www.mcternan.me.uk/mscgen/">http://www.mcternan.me.uk/mscgen/</a><br> </div> Thu, 23 Apr 2015 09:03:27 +0000 Plotting tools for networks, part I https://lwn.net/Articles/641339/ https://lwn.net/Articles/641339/ paulj <div class="FormattedComment"> +1 on Dia being a great tool.<br> <p> It has (had?) some rough edges. Stay away from those and it's a powerful little tool for doing diagrammes (with a much simpler UI than Inkscape, because of that focus).<br> <p> </div> Wed, 22 Apr 2015 09:14:20 +0000 Plotting tools for networks, part I https://lwn.net/Articles/641093/ https://lwn.net/Articles/641093/ dashesy <div class="FormattedComment"> No, my point was that new paradigm is the web, open source can find a new home there, and maybe even make some money through social engagement like Pateron. I have used Dia before, really neat but desktops will soon be developers-only, end users will be on the web, it is a shame many users will never see it, nor even Inkscape.<br> </div> Mon, 20 Apr 2015 16:27:42 +0000 Plotting tools for networks, part I https://lwn.net/Articles/641083/ https://lwn.net/Articles/641083/ cry_regarder <div class="FormattedComment"> not open source<br> </div> Mon, 20 Apr 2015 15:54:44 +0000 Distributed algorithms https://lwn.net/Articles/641071/ https://lwn.net/Articles/641071/ cry_regarder <div class="FormattedComment"> I think you might want to search for "petri net visualization open source".<br> <p> Maybe <a href="https://github.com/zamzam/PetriNetSim">https://github.com/zamzam/PetriNetSim</a> might do the trick for you?<br> <p> Cry<br> </div> Mon, 20 Apr 2015 15:24:11 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640935/ https://lwn.net/Articles/640935/ boog <div class="FormattedComment"> You can embed asymptote code in a LaTeX document, in which case it automatically picks up some of the attributes of the document, which is really nice for visual consistency. However, most people probably use it in a stand alone manner (often then including the figures produced into a LaTeX document).<br> </div> Sat, 18 Apr 2015 20:33:02 +0000 Distributed algorithms https://lwn.net/Articles/640875/ https://lwn.net/Articles/640875/ wmfa <div class="FormattedComment"> Just an idea: instantiate a black-and-white dot graph, then render individual frames using color for your messages. For example, fill in a node while the message is in a node being processed, and color the edge while it is in transit to the next node. Multiple colors might help elucidate some aspect of your algorithm.<br> <p> The rendered frames can then be stacked into an animated GIF using ImageMagick. example: <a href="https://www.tjhsst.edu/~dhyatt/supercomp/n401a.html">https://www.tjhsst.edu/~dhyatt/supercomp/n401a.html</a><br> </div> Sat, 18 Apr 2015 05:25:19 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640814/ https://lwn.net/Articles/640814/ leephillips <div class="FormattedComment"> ZGRviewer looks amazing, although early in development. A tool to graph the dependencies in a Makefile would be genuinely useful, thanks for mentioning it.<br> </div> Fri, 17 Apr 2015 17:42:03 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640808/ https://lwn.net/Articles/640808/ karkhaz <div class="FormattedComment"> Another extremely useful tool that spits out dot graphs: [1] shows the dependency graph of a makefile. I find it invaluble when initially trying to comprehend large makefiles written by other people (or even myself).<br> <p> Also, a +viewer+ for dot files. Normally one would run dot -Tpng or Twhatever to get an image, but zgrviewer [2] reads in a dot file directly and allows you to zoom, pan etc. It has some very useful features for huge graphs where the edges are all mixed up, for example you can `follow' an edge around a graph without getting lost.<br> <p> [1] <a href="https://github.com/lindenb/makefile2graph">https://github.com/lindenb/makefile2graph</a><br> [2] <a href="http://zvtm.sourceforge.net/zgrviewer.html">http://zvtm.sourceforge.net/zgrviewer.html</a><br> </div> Fri, 17 Apr 2015 16:24:33 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640756/ https://lwn.net/Articles/640756/ zenk <div class="FormattedComment"> The dot file translated from callgrind file by gprof2dot has wrong cost percentage (at least when I used it). So I wrote my callgrind2dot (<a href="https://github.com/zenkj/callgrind2dot">https://github.com/zenkj/callgrind2dot</a>) using lua, which is much faster than gprof2dot and works fine for me.<br> </div> Fri, 17 Apr 2015 11:22:49 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640740/ https://lwn.net/Articles/640740/ lacos <div class="FormattedComment"> The state transitions diagram looks awesome. Impressive.<br> </div> Fri, 17 Apr 2015 09:13:13 +0000 Count me among the Graphviz fans https://lwn.net/Articles/640725/ https://lwn.net/Articles/640725/ gwolf <div class="FormattedComment"> I am in the final stages of editting a textbook on operating systems (in Spanish, available at <a href="http://sistop.org/sistemas_operativos.pdf">http://sistop.org/sistemas_operativos.pdf</a> ). I used three tools for practically all of my diagrams (for which you can see the sources at <a href="https://github.com/gwolf/sistop/tree/master/fig">https://github.com/gwolf/sistop/tree/master/fig</a> ):<br> <p> • Graphviz<br> • Ditaa<br> • Gnuplot<br> <p> I achieved some interesting medium-level wizardry, mostly with Graphviz. I have taken on to using Graphviz to many different tasks — Currently I'm working on using it to model a ~1000-node trust network evolving through time. Very good results so far.<br> </div> Fri, 17 Apr 2015 04:11:52 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640706/ https://lwn.net/Articles/640706/ leephillips <div class="FormattedComment"> Asymptote seems awesome, although I've never used it. It's not really used within LaTeX, though, is it, even thought it uses LaTeX for typesetting its text and labels?<br> </div> Thu, 16 Apr 2015 23:28:44 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640696/ https://lwn.net/Articles/640696/ boog <div class="FormattedComment"> Or maybe Asymptote<br> <p> <a href="http://asymptote.sourceforge.net/">http://asymptote.sourceforge.net/</a><br> <a href="http://asymptote.sourceforge.net/gallery/">http://asymptote.sourceforge.net/gallery/</a><br> <p> which includes a "flowchart" module.<br> </div> Thu, 16 Apr 2015 22:43:36 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640687/ https://lwn.net/Articles/640687/ jnareb <div class="FormattedComment"> Very nice tool that makes use of GraphViz is gprof2dot.py to visualize call graph (not only from gprof, but also e.g. callgrind and other profilers). Yet another is description-driven PlantUML tool.<br> <p> I guess that by "one is used within the LaTeX document-processing system" you mean PGF/TikZ (take a look at <a href="http://www.texample.net/">http://www.texample.net/</a>), isn't it? Or was it rather specialized FeynMF package?<br> </div> Thu, 16 Apr 2015 22:27:54 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640630/ https://lwn.net/Articles/640630/ tbielawa <div class="FormattedComment"> I had never heard of this xdot before (it's python-xdot in the fedora repos if anyone is interested). That's really really cool! The zooming is really smooth.<br> </div> Thu, 16 Apr 2015 16:34:43 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640516/ https://lwn.net/Articles/640516/ dashesy I recently used <a href=https://darw.io>darw.io</a> and I enjoyed its simplicity and integration with Google Drive, software should take on new ways I guess. Thu, 16 Apr 2015 15:00:36 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640541/ https://lwn.net/Articles/640541/ robinst <div class="FormattedComment"> Another very good library for programmatically visualizing things is d3js.<br> <p> See examples (warning, big page):<br> <p> <a href="https://github.com/mbostock/d3/wiki/Gallery">https://github.com/mbostock/d3/wiki/Gallery</a><br> </div> Thu, 16 Apr 2015 09:25:03 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640537/ https://lwn.net/Articles/640537/ wodny <div class="FormattedComment"> xdot is a useful tool letting the user explore a .dot graph like a vector image, so there is no need to manually re-render a bitmap. It has zooming, panning and automatic refresh. It highlights the tail vertex of the selected edge.<br> </div> Thu, 16 Apr 2015 09:08:43 +0000 Distributed algorithms https://lwn.net/Articles/640505/ https://lwn.net/Articles/640505/ yhvh I'm implementing distributed algorithms for a final year project, <a href="http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=1209234&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D1209234">like this one for example</a>. These algorithms operate by passing messages between nodes in a graph. I'd like to show how messages propagate through the graph as the algorithm is running, since it's not always obvious from the resulting (or intermediate) node state how it all happened, (which node effected this change?).<br><br> I'd like the messages to appear as some shape (say a circle), travelling along the edge between the nodes at various timestamps, from information gleaned from logs on the various nodes (simulated or otherwise).<br><br> Thanks, Will Thu, 16 Apr 2015 01:09:28 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640496/ https://lwn.net/Articles/640496/ tonyblackwell <div class="FormattedComment"> Pity yEd is proprietary. Despite this, worth downloading (currently free, think they make their money from back-end tools) just to see the functionality. Takes columns of objects with their overlapping connectors, then their e.g. 'organic' layout transform gives beautiful diagrams. Allows grouping. There must be some elegant programming gone into this tool.(No, I've nothing to do with them - found it when my wife wanted better summaries of our affairs!)<br> </div> Thu, 16 Apr 2015 00:30:46 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640494/ https://lwn.net/Articles/640494/ gerdesj <div class="FormattedComment"> <font class="QuotedText">&gt;&gt; Plotting tools for networks, part I ... In the first two installments in this series ... </font><br> <p> RLY?<br> <p> Dia, GaphViz n dot border on genius. None of them are particularly pretty but each one is capable of delighting the studious user and generating sheer beauty. They all take a bit of work though.<br> <p> Dia has a GUI and is great for a quick err diagram. It's not quite as good as Visio in some ways but it is free.<br> <p> GV and dot are excellent. Simply point your language of choice at them and they deliver in absolute spades.<br> </div> Thu, 16 Apr 2015 00:27:22 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640493/ https://lwn.net/Articles/640493/ pflugstad Strongly recommend you look at <a href="http://gephi.github.io/">Gephi</a> as well. I've been using it on some flow graphs lately and it works very well. <p> On that note, does anyone know of a graphing tool that does good 3D? I.e. that lets you rotate the resulting graphic on all axis (Gephi can sort-of do this, but doesn't let you rotate the view very well)? Thu, 16 Apr 2015 00:16:58 +0000 Distributed algorithms https://lwn.net/Articles/640492/ https://lwn.net/Articles/640492/ gerdesj <div class="FormattedComment"> <font class="QuotedText">&gt;&gt; Are there any tools that can visualize distributed algorithms easily, with effects like messages animating along edges?</font><br> <p> Details?<br> <p> Cheers<br> Jon<br> </div> Thu, 16 Apr 2015 00:05:24 +0000 Distributed algorithms https://lwn.net/Articles/640491/ https://lwn.net/Articles/640491/ gerdesj <div class="FormattedComment"> <font class="QuotedText">&gt;&gt;Are there any tools that can visualize distributed algorithms easily, with effects like messages animating along edges?</font><br> <p> No<br> <p> Cheers<br> Jon<br> </div> Thu, 16 Apr 2015 00:04:40 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640490/ https://lwn.net/Articles/640490/ jlargentaye <div class="FormattedComment"> After dicking around with GraphViz in college, I finally realized its power (and the power of the Dot language) when I discovered the "gvpr" tool, which is basically AWK for graphs.<br> <p> If Graphviz's layouters don't do what you want, you can try writing a GVPR script to do so. The really powerful thing is that you can process your initial Dot source via a pipeline of GVPR (or other!) scripts that augment the layout (by adding to dot source), then pass that into a layouter which will preserve your parameters. Check "man gvpr".<br> </div> Thu, 16 Apr 2015 00:00:15 +0000 Distributed algorithms https://lwn.net/Articles/640488/ https://lwn.net/Articles/640488/ gerdesj <div class="FormattedComment"> <font class="QuotedText">&gt;&gt;Are there any tools that can visualize distributed algorithms easily, with effects like messages animating along edges?</font><br> <p> Yes<br> <p> Cheers<br> Jon<br> </div> Wed, 15 Apr 2015 23:58:09 +0000 Distributed algorithms https://lwn.net/Articles/640486/ https://lwn.net/Articles/640486/ yhvh <div class="FormattedComment"> Are there any tools that can visualize distributed algorithms easily, with effects like messages animating along edges?<br> </div> Wed, 15 Apr 2015 23:27:00 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640483/ https://lwn.net/Articles/640483/ dlang <div class="FormattedComment"> also take a look at blockdiag.com It's python and similar to Graphviz, and has some sub-tools for specialized items<br> <p> sequence diagrams<br> action diagrams<br> network diagrams<br> rack layouts<br> packet/memory diagrams<br> </div> Wed, 15 Apr 2015 23:12:08 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640480/ https://lwn.net/Articles/640480/ tbielawa <p>Graphviz is by far one of my favorite tools for generating graphs. I think that the two graphs I'm most proud of are:</p> <ol> <li> A graph showing the XMPP (Jabber) state transitions during the client connections process. It's quite hefty and utilizes some of the extra features described in this article (such as subgraphs). <a href="https://github.com/tbielawa/PAD-XMPP/tree/master/Graph">PAD-XMPP: Graphs</a> [<a href="https://raw.githubusercontent.com/tbielawa/PAD-XMPP/master/Graph/ConnectionStates.png">PNG</a>] </li> <li> <p>A graph of class inheritance in a Python project I maintain. The graph data is automatically generated in two phases. First by scanning the source tree and building up references, then parsing those references and constructing a proper dot-language file. <a href="https://github.com/tbielawa/Taboot/tree/master/Graph">Taboot: Graphs</a> [<a href="https://raw.githubusercontent.com/tbielawa/Taboot/master/Graph/TabootInheritanceGraph.png">PNG</a>]</p> <p> What makes #2 so fun (I'm a geek, graphs are fun, ok?) to me is that each time you run the make_graph script sub-classes receive a random color to help illustrate where major changes from parent classes are introduced. You could run it several times and end up with varying colored charts. Same structure, just different node colors. </p> </li> </ol> Wed, 15 Apr 2015 23:09:54 +0000 Plotting tools for networks, part I https://lwn.net/Articles/640478/ https://lwn.net/Articles/640478/ in-lwn@baka.org <div class="FormattedComment"> When creating network diagrams manually, I find using yEd very useful, convenient, and easy to use. The tons of autolayout options are really nice.<br> <p> While not as pretty as yEd generated graphs, using the Navy CORE network simulator for linux to create a network diagram for a IP network is pretty neat as well, and lets you actually simulate your network afterward :-)<br> <p> While it is not really suitable for network diagrams, the freemind tool allows a certain class of information association.<br> <p> <p> </div> Wed, 15 Apr 2015 22:36:27 +0000