network小学习

import networkx as nx
import matplotlib.pyplot as plt

G = nx.Graph()
G.add_node('wuhan',size=10)
G.add_weighted_edges_from([(1, 2, 0.5), (3, 1,5)])
options = {
     'node_color': 'red',
     'node_size': 100,
     'width': 3,
}
nx.draw(G, with_labels=True, font_weight='bold',**options)

plt.show()
node_color=color_map,
color_map = []
for node in G:
    print(type(node))
    if type(node)!=str:
        if node < 2:
            color_map.append('blue')
        else: 
            color_map.append('green')     
    else:
        color_map.append('red')
nx.draw(G, node_color=color_map, with_labels=True)
plt.show()
<class 'str'>
<class 'int'>
<class 'int'>
<class 'int'>

在这里插入图片描述

print(color_map)
['red', 'blue', 'green', 'green']

还存在查询功能

list(G.nodes(data=‘foo’))
[(0, ‘bar’), (1, None), (2, None)]

list(G.nodes(data=‘time’))
[(0, None), (1, ‘5pm’), (2, None)]

relabeling

G = nx.path_graph(3)
sorted(G)
[0, 1, 2]

mapping = {0: ‘a’, 1: ‘b’, 2: ‘c’}

H = nx.relabel_nodes(G, mapping)

H = nx.relabel_nodes(G, lambda x: x ** 2)

G = nx.relabel_nodes(G, mapping, copy=False)

由于network的数据绘制是基于matplot的,所以我们imread录入数据,更改标签形状

import matplotlib.image as mpimg

img=mpimg.imread(’/Users/johanneswachs/Downloads/stink.jpeg’)

  • G=nx.Graph()

  • G.add_node(0,image= img)

  • G.add_node(1,image= img)

nx.draw(G, node_color=color_map, with_labels=True)
plt.show()

在这里插入图片描述

mapping = { 1: 'hongshan', 2: 'donghu'}

H = nx.relabel_nodes(G, mapping)
nx.draw(H, node_color=color_map, with_labels=True)
plt.show()

在这里插入图片描述

G = nx.relabel_nodes(G, mapping, copy=False)
nx.draw(G, node_color=color_map, with_labels=True)
plt.show()

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值