本文简要介绍
networkx.classes.function.set_edge_attributes
的用法。用法:
set_edge_attributes(G, values, name=None)
从给定值或值字典设置边属性。
警告
参数
values
和name
的调用顺序在 v1.x 和 v2.x 之间切换。- G:NetworkX 图表
- values:标量值,dict-like
边属性应该设置为什么。如果
values
不是字典,则将其视为单个属性值,然后将其应用于G
中的每条边。这意味着,如果您提供一个可变对象(如列表),则对该对象的更新将反映在每条边的边属性中。属性名称将为name
。如果
values
是 dict 或 dict 的 dict,它应该由边元组键控到属性值或用于更新边属性的属性键/值对的 dict。对于多重图,边元组必须采用(u, v, key)
的形式,其中u
和v
是节点,而key
是边键。对于非多重图,键必须是(u, v)
形式的元组。- name:字符串(可选,默认=无)
如果值为标量,则要设置的边属性的名称。
参数:
例子:
在计算了图边的某些属性之后,您可能希望分配一个边属性来存储每个边的该属性的值:
>>> G = nx.path_graph(3) >>> bb = nx.edge_betweenness_centrality(G, normalized=False) >>> nx.set_edge_attributes(G, bb, "betweenness") >>> G.edges[1, 2]["betweenness"] 2.0
如果您提供一个列表作为第二个参数,则对列表的更新将反映在每条边的边属性中:
>>> labels = [] >>> nx.set_edge_attributes(G, labels, "labels") >>> labels.append("foo") >>> G.edges[0, 1]["labels"] ['foo'] >>> G.edges[1, 2]["labels"] ['foo']
如果您提供字典字典作为第二个参数,则整个字典将用于更新边属性:
>>> G = nx.path_graph(3) >>> attrs = {(0, 1): {"attr1": 20, "attr2": "nothing"}, (1, 2): {"attr2": 3}} >>> nx.set_edge_attributes(G, attrs) >>> G[0][1]["attr1"] 20 >>> G[0][1]["attr2"] 'nothing' >>> G[1][2]["attr2"] 3
请注意,如果 dict 包含不在
G
中的边,它们将被静默忽略:>>> G = nx.Graph([(0, 1)]) >>> nx.set_edge_attributes(G, {(1, 2): {"weight": 2.0}}) >>> (1, 2) in G.edges() False
相关用法
- Python NetworkX set_node_attributes用法及代码示例
- Python NetworkX sets用法及代码示例
- Python NetworkX selfloop_edges用法及代码示例
- Python NetworkX second_order_centrality用法及代码示例
- Python NetworkX single_source_dijkstra_path_length用法及代码示例
- Python NetworkX single_source_bellman_ford用法及代码示例
- Python NetworkX subgraph_view用法及代码示例
- Python NetworkX shortest_path用法及代码示例
- Python NetworkX square_clustering用法及代码示例
- Python NetworkX soft_random_geometric_graph用法及代码示例
- Python NetworkX simrank_similarity用法及代码示例
- Python NetworkX shell_layout用法及代码示例
- Python NetworkX single_source_bellman_ford_path用法及代码示例
- Python NetworkX sudoku_graph用法及代码示例
- Python NetworkX single_source_bellman_ford_path_length用法及代码示例
- Python NetworkX single_source_shortest_path_length用法及代码示例
- Python NetworkX snap_aggregation用法及代码示例
- Python NetworkX stochastic_block_model用法及代码示例
- Python NetworkX symmetric_difference用法及代码示例
- Python NetworkX simulated_annealing_tsp用法及代码示例
- Python NetworkX shortest_augmenting_path用法及代码示例
- Python NetworkX spring_layout用法及代码示例
- Python NetworkX simple_cycles用法及代码示例
- Python NetworkX single_source_dijkstra用法及代码示例
- Python NetworkX spectral_bipartivity用法及代码示例
注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.classes.function.set_edge_attributes。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。