В настоящее время у меня есть очень простой график, подобный следующему:
import networkx as nx
G = nx.Graph()
lat = 40.661
long = -73.944
G.add_node(12345, latlong=(lat, long))
И G.nodes[12345]['latlong']
, конечно, возвращает (40.661, -73.944)
.
Какой лучший способ установить вещи так что я также получаю:
G.nodes[12345]['longlat']
возвращает (-73.944, 40.661)
G.nodes[(40.661, -73.944)]
возвращает 12345
Я знаю, что я мог бы также добавить узлы, подобные этому: G.add_node(12345, latlong=(lat, long), longlat=(long, lat))
и иметь дополнительный словарь d = {(40.661, -73.944): 12345}
.
Но есть ли более приятный, не слишком хакерский способ без дублирования данных?