node_link_graph#
- node_link_graph(data, directed=False, multigraph=True, *, source='source', target='target', name='id', key='key', link='links', nodes='nodes')[source]#
返回从节点-链接数据格式构建的图。 适用于从JSON反序列化。
- Parameters:
- datadict
节点-链接格式的图数据
- directedbool
如果为True,且数据中未指定方向,则返回有向图。
- multigraphbool
如果为True,且数据中未指定多图,则返回多图。
- sourcestring
提供用于存储NetworkX内部图数据的’source’属性名称的字符串。
- targetstring
提供用于存储NetworkX内部图数据的’target’属性名称的字符串。
- namestring
提供用于存储NetworkX内部图数据的’name’属性名称的字符串。
- keystring
提供用于存储NetworkX内部图数据的’key’属性名称的字符串。
- linkstring
提供用于存储NetworkX内部图数据的’link’属性名称的字符串。
- nodesstring
提供用于存储NetworkX内部图数据的’nodes’属性名称的字符串。
- Returns:
- GNetworkX graph
NetworkX图对象
See also
Notes
属性’key’仅用于多图。
要结合使用
node_link_data
和node_link_graph
, 属性的关键字名称必须匹配。Examples
通过转换图来创建节点-链接格式的数据。
>>> from pprint import pprint >>> G = nx.Graph([("A", "B")]) >>> data = nx.node_link_data(G) >>> pprint(data) {'directed': False, 'graph': {}, 'links': [{'source': 'A', 'target': 'B'}], 'multigraph': False, 'nodes': [{'id': 'A'}, {'id': 'B'}]}
将节点-链接格式的数据还原为图。
>>> H = nx.node_link_graph(data) >>> print(H.edges) [('A', 'B')]
使用JSON序列化和反序列化图,
>>> import json >>> d = json.dumps(nx.node_link_data(G)) >>> H = nx.node_link_graph(json.loads(d)) >>> print(G.edges, H.edges) [('A', 'B')] [('A', 'B')]