What could cause NetworkX & PyGraphViz to work fine alone but not together?

后端 未结 2 1688
野的像风
野的像风 2020-12-02 13:18

I\'m working to learning some Python graph visualization. I found a few blog posts doing some things I wanted to try. Unfortunately I didn\'t get too far, encountering this

相关标签:
2条回答
  • 2020-12-02 14:07

    nx.nx_pydot.graphviz_layout() seems to be the way to use graphviz_layout in Networkx release 1.11.

    You may need to install Graphviz via

    sudo apt-get install graphviz
    

    Some example code from the documentation:

    import networkx as nx
    G = nx.complete_graph(4)
    pos = nx.nx_pydot.graphviz_layout(G)
    

    I suggest this as the Graphviz_layout documentation for 1.11

    0 讨论(0)
  • 2020-12-02 14:14

    There is a small bug in the draw_graphviz function in networkx-1.11 triggered by the change that the graphviz drawing tools are no longer imported into the top level namespace of networkx.

    The following is a workaround

    In [1]: import networkx as nx
    
    In [2]: G = nx.complete_graph(5)
    
    In [3]: from networkx.drawing.nx_agraph import graphviz_layout
    
    In [4]: pos = graphviz_layout(G)
    
    In [5]: nx.draw(G, pos)
    

    To use the other functions such as to_agraph, write_dot, etc you will need to explicitly use the longer path name

     nx.drawing.nx_agraph.write_dot()
    

    or import the function into the top-level namespace

    from networkx.drawing.nx_agraph import write_dot()
    write_dot()
    
    0 讨论(0)
提交回复
热议问题