【问题标题】:networkx: how to uncover arrowheads from nodes with bigger size?networkx:如何从更大尺寸的节点中发现箭头?
【发布时间】:2022-08-09 17:15:07
【问题描述】:

我正在使用 networkx 绘制图表。默认node_size=500; width=1.0对我来说太小了,所以我需要放大图表。例如:

G = nx.DiGraph()
G.add_nodes_from([1, 2, 3])
G.add_edges_from([(1, 2), (2, 3)])
pos = graphviz_layout(G, prog=\'dot\')
nx.draw_networkx_nodes(G, pos, node_size=1000, alpha=0.3)
nx.draw_networkx_edges(G, pos, width=2.)
plt.show()

然而,在结果图中,边缘箭头和尾部的位置没有相应调整,因此被更大尺寸的节点覆盖(我使用透明度来显示这一点)。见下文:

如果我直接使用nx.draw(G, pos, node_size=1000, width=2.) 那么结果很好:

但是,我不能简单地使用这种方法,因为我对不同的节点和边缘有不同的颜色和大小。

对于我的案例,您有什么建议可以发现箭头,或者有其他方法可以放大图表吗?

    标签: python matplotlib networkx directed-acyclic-graphs graph-visualization


    【解决方案1】:

    哦,我刚刚找到它.. 绘制边缘时还需要设置node_size

    nx.draw_networkx_edges(G, pos, width=2., node_size=1000)

    【讨论】:

      猜你喜欢
      • 2017-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-11
      • 1970-01-01
      • 2011-08-28
      • 1970-01-01
      相关资源
      最近更新 更多