networkx:画随机几何图,找出中心节点并按路径长度染色

随机生成一个集合图,自带路径属性,图大小为1*1,找出距离中心[0.5, 0.5]最近的节点,并按照路径染色。NetworkX Examples Drawing Random Geometric Graph<pre name="code" class="python">#coding:utf-8import networkx as nximport matplotlib.pyplot as pltG=nx.random_geometric_graph(200,0.125)# position is stored as node attribute data for random_geometric_graphpos=nx.get_node_attributes(G,'pos')# find node near center (0.5,0.5)找到中心节点并求最近的节点,设为ncenterdmin=1ncenter=0for n in pos:x,y=pos[n]d=(x-0.5)**2+(y-0.5)**2if d<dmin:ncenter=ndmin=d# color by path length from node near center颜色定为红色,程度<span style="font-family: Arial, Helvetica, sans-serif;">按距离中心点的路径长度染色</span>p=nx.single_source_shortest_path_length(G,ncenter)plt.figure(figsize=(8,8))nx.draw_networkx_edges(G,pos,nodelist=[ncenter],alpha=0.4)nx.draw_networkx_nodes(G,pos,nodelist=p.keys(),node_size=80,node_color=p.values(),cmap=plt.cm.Reds_r)plt.xlim(-0.05,1.05)plt.ylim(-0.05,1.05)plt.axis('off')plt.savefig('random_geometric_graph.png')plt.show()

版权声明:欢迎转载,,转载请注明出处

你挤进地铁时,西藏的山鹰一直盘旋云端,

networkx:画随机几何图,找出中心节点并按路径长度染色

相关文章:

你感兴趣的文章:

标签云: