4 ms·
Of all the tools mentioned in this thread: how do they scale? We have DAGs that cause graphviz to choke (tens of minutes running time, if it ever finishes). So
by eslaught 8y ago
Of all the tools mentioned in this thread: how do they scale?
We have DAGs that cause graphviz to choke (tens of minutes running time, if it ever finishes). So far I'm not aware of anything that scales better than graphviz with similar results to the dot layout engine.
- porterde 8y agoEven if you can calculate the layout for a very large DAG in a reasonable time, the zooming and scrolling required as a user to make sense of it and follow interesting paths makes it unwieldy in my experience. One approach to use with very large DAGs is to interactively expand / collapse nodes - for a simple tree example imagine something like a treeview control for browsing a file system, expanding folders of interest to drill down rather than viewing all expanded. For non-tree DAGs you need the layout algorithm and you might need to automatically collapse unrelated sections as you expand nodes along a path to keep the time reasonable. This approach can be combined with lazy loading data as you expand a node as another performance enhancement. With some effort you can add this interactivity to vis.js or d3. I have previously used a commercial product called KeyLines [1] which has this feature, uses WebGL to run the layout in gpu. [1] https://cambridge-intelligence.com/keylines/layouts/ https://cambridge-intelligence.com/keylines/layouts/