【问题标题】:Networkx; move edges in nx.MultiDiGraph plot网络x;在 nx.MultiDiGraph 图中移动边
【发布时间】:2015-10-24 23:54:26
【问题描述】:

这个问题很简单。但是,官方文档或搜索都没有太大帮助。我正在寻找(在简单的情况下)看起来像这样的东西:

我正在寻找一个非常简单的有向图,它有一个节点和两个自环。这是我到目前为止得到的。

import networkx as nx
from nxpd import draw
G = nx.MultiDiGraph()
G.graph['dpi'] = 120
{'state': 'Low'}
G.add_nodes_from(range(1,2))
G.add_edges_from([(1,1),(1,1)])
pos=nx.get_node_attributes(G,'pos')
draw(G, show='ipynb')

哪个产生

但是,我非常希望另一条边在左侧,并且与第一条的大小相同。

【问题讨论】:

    标签: ipython-notebook graphviz networkx directed-graph


    【解决方案1】:

    您正在使用 Graphviz 在那里使用 draw() 命令绘制图形。 Graphviz 的属性设置记录在http://www.graphviz.org/content/attrs

    在您的情况下,您想使用“headport”和“tailport”来设置边缘与节点相交的位置。

    试试

    import networkx as nx
    G = nx.MultiDiGraph()
    G.add_edge(1,1,headport='sw',tailport='nw')
    G.add_edge(1,1,headport='se',tailport='ne')
    nx.write_dot(G,'sl.dot')
    # run dot -Tpng sl.dot >sl.png
    

    文档

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-14
      • 1970-01-01
      • 1970-01-01
      • 2012-07-08
      • 1970-01-01
      相关资源
      最近更新 更多