-
Notifications
You must be signed in to change notification settings - Fork 118
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Code future #169
Comments
I'm not very interested in this proposal because the whole point of developing daft in the first place was to enable manual placement of nodes (often needed to get publication quality PGMs) which was/is? a PITA with the standard network visualization tools. I believe that it fills a very different niche than the tools you're looking at! |
NetworkX allows for the nodes to be anything / any metadata to be added to a node, e.g. a daft Node that holds the position information. |
Got it. If you think having networkx provide a data structure, and if you feel that comes with benefits, I'm happy to chat! I feel like the comparison to automated rendering from those PPL libraries is a big of a red herring, that's all. |
numpyro and some others can auto-render their PGM, not relying on daft. They build a graphviz Graph and render that to matplotlib.
I was thinking that daft could keep its UI, but internally build a NetworkX graph (which can convert to a graphviz object). Daft could then support many different rendering options -- matplotlib, plotly, Vega, etc — by plugin (
entrypoint
modules), just by rendering the NetworkX graph. Also the NetworkX graph is a useful object in itself, with nice serialization options and customization, etc.Perhaps numpyro could then make daft a dependency, esp if it supports a number of rendering options.
The text was updated successfully, but these errors were encountered: