NetworkX

Previous topic

networkx.convert_node_labels_to_integers

Next topic

networkx.freeze

networkx.relabel_nodes

relabel_nodes(G, mapping)

Return a copy of G with node labels transformed by mapping.

Parameters:

G : graph

A NetworkX graph

mapping : dictionary or function

Either a dictionary with the old labels as keys and new labels as values or a function transforming an old label with a new label. In either case, the new labels must be hashable Python objects.

Examples

mapping as dictionary

>>> G=nx.path_graph(3)  # nodes 0-1-2
>>> mapping={0:'a',1:'b',2:'c'}
>>> H=nx.relabel_nodes(G,mapping)
>>> print H.nodes()
['a', 'c', 'b']
>>> G=nx.path_graph(26) # nodes 0..25
>>> mapping=dict(zip(G.nodes(),"abcdefghijklmnopqrstuvwxyz"))
>>> H=nx.relabel_nodes(G,mapping) # nodes a..z
>>> mapping=dict(zip(G.nodes(),xrange(1,27)))
>>> G1=nx.relabel_nodes(G,mapping) # nodes 1..26

mapping as function

>>> G=nx.path_graph(3)
>>> def mapping(x):
...    return x**2
>>> H=nx.relabel_nodes(G,mapping)
>>> print H.nodes()
[0, 1, 4]