【问题标题】:Draw a weighted complex network with NetworkX使用 NetworkX 绘制加权复杂网络
【发布时间】:2011-12-30 07:54:50
【问题描述】:

包 NetworkX 能否用于绘制具有分布给出权重的复杂网络,例如幂律?那么我可以写一个代码来绘制权重分布或强度分布,甚至进一步绘制一个节点的加权平均最近邻度吗?然后为每类相似程度或相似强度等着色。

我有一个由大约 300 个节点组成的复杂网络的大量数据,以及有关各个 egdes 权重的数据。绘制这种网络的最佳方法是什么?

【问题讨论】:

  • 是的 networkx 可以做所有这些事情。我建议您查看documentation,如果您遇到任何问题,请提出这些问题。顺便说一句,我不会将 300 个节点的网络视为“大型”。
  • 非常感谢您的观察。我刚刚开始意识到加权网络的文档帐户也是如此。因此,在“度”部分中,当您计算“度”并在相关代码中的参数中添加权重时,您会得到强度,所以没有。

标签: python networkx complex-networks


【解决方案1】:

networkx 中的边可以使用特殊属性“权重”,该属性可用于许多需要加权边的算法。您可以使用 networkx 绘图命令来考虑这些权重(例如,通过弹簧嵌入式可视化中的弹簧力)。比如:

>>> import networkx as nx
>>> import matplotlib.pyplot as plt
>>> G = nx.Graph()
>>> # add nodes, edges, etc.
...
>>> nx.draw_spring(G)
>>> plt.show()

【讨论】:

  • 非常感谢您的帮助。提问是有效理解的关键!
猜你喜欢
  • 1970-01-01
  • 2018-11-25
  • 1970-01-01
  • 1970-01-01
  • 2013-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多