Python 使用Networkx和plotly绘制特定图形
我是networkx的新手,我想用networkx和plotly绘制一个已定义的图形。该图定义如下:Python 使用Networkx和plotly绘制特定图形,python,plotly,networkx,Python,Plotly,Networkx,我是networkx的新手,我想用networkx和plotly绘制一个已定义的图形。该图定义如下: pos = {0: (20, 10), 1: (20, 20), 2: (30, 10), 3: (30, 20), 4: (50, 15)} X=nx.Graph() Gr.add_nodes_from(pos.keys()) Gr.add_edge(0,3) Gr.add_edge(0,2) Gr.add_edge(1,2) Gr.add_edge(3,4) 为了使节点可以单击,如plo
pos = {0: (20, 10), 1: (20, 20), 2: (30, 10), 3: (30, 20), 4: (50, 15)}
X=nx.Graph()
Gr.add_nodes_from(pos.keys())
Gr.add_edge(0,3)
Gr.add_edge(0,2)
Gr.add_edge(1,2)
Gr.add_edge(3,4)
为了使节点可以单击,如plotly教程()所示,我使用了其中编写的代码。问题是,当我运行以下代码时:
for node in Gr.nodes():
x, y = Gr.nodes[node]['pos']
node_x.append(x)
node_y.append(y)
它向我显示了一个错误:
<ipython-input-38-a80b1db2d250> in <module>
2 node_y = []
3 for node in Gr.nodes():
----> 4 x, y = Gr.nodes[node]['pos']
5 node_x.append(x)
6 node_y.append(y)
KeyError: 'pos'
in
2节点_y=[]
3对于组节点()中的节点:
---->4 x,y=Gr.nodes[node]['pos']
5节点附加(x)
6节点y追加(y)
键错误:“pos”
同样的事情也发生在边缘上。我不知道该怎么办,因为我知道这段代码可以很好地处理上面url示例中显示的随机网络。非常感谢您的帮助。我从这个url得到了答案:。多亏了@TomRon。其思想是分别定义每个节点,并添加下面的指令以获取位置并将其与plotly一起使用
pos=nx.get_node_attributes(G,'pos')
请检查此项-这是否回答了您的问题@汤姆龙。是的,第二个答案是。谢谢,非常感谢