python 表示图论_Python 图论工具 | 学步园
networkx:
一個用Python語言開發的圖論與復雜網絡建模工具,
內置了常用的圖與復雜網絡分析
可以方便的進行復雜網絡數據分析、仿真建模等工作。
依賴工具:
numpy
pyparsing
datautil
matplotlib
networkx
采用隨機圖做個實驗:
from random import random, choice
import networkx as nx
import matplotlib.pyplot as plt
def dist(a, b):
(x1, y1) = a
(x2, y2) = b
return ((x1 - x2) ** 2 + (y1 - y2) ** 2) ** 0.5
G = nx.Graph()
points = [(random(), random()) for _ in range( 8 )]
for p1, p2 in zip(points[:-1], points[1:]):
G.add_edge(p1, p2, weight=dist(p1, p2))
for _ in range( 8 ):
p1, p2 = choice(points), choice(points)
G.add_edge(p1, p2, weight=dist(p1, p2))
nx.draw(G)
plt.savefig( 'asd.png' )
plt.show()
完全圖做個試驗:
import networkx as nx
import matplotlib.pyplot as plt
G = nx.complete_graph(6)
nx.draw(G)
plt.savefig("asd.png")
plt.show()
總結
以上是生活随笔為你收集整理的python 表示图论_Python 图论工具 | 学步园的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python算法系列资料集(一)-202
- 下一篇: python装饰器由浅入深_详解Pyth