2017-10-12 45 views
0

当我运行这个例子:传递节点颜色图表时运行时错误边缘

import networkx as nx 
import matplotlib.pyplot as plt 

B=[[0,1], 
    [2,4], 
    [5,6], 
    [3,7], 
    [0,3]] 
G = nx.Graph() 
for i in range(len(B)): 
    G.add_edge((B[i][0]),(B[i][1])) 
nx.draw(G,with_labels=True, node_color=[0,1,1,0,0,1,1,0]) 
plt.show()  

它显示曲线图。然而,当我添加更多的边缘节点的颜色,像这样:

import networkx as nx 
import matplotlib.pyplot as plt 

B=[[0,1], 
    [2,4], 
    [5,6], 
    [3,7], 
    [0,3], 
    [2,8], 
    [7,11], 
    [6,10], 
    [3,12], 
    [6,12]] 
G = nx.Graph() 
for i in range(len(B)): 
    G.add_edge((B[i][0]),(B[i][1])) 

nx.draw(G,with_labels=True, node_color=[0,1,1,0,0,1,1,0,1,0,1,1,1]) 
plt.show() 

它提出了这个错误。

ValueError: to_rgba: Invalid rgba arg "0" 
to_rgb: Invalid rgb arg "0" 
cannot convert argument to rgb sequence 

我该如何解决这个问题?

+1

欢迎计算器!请查看[如何创建最小,完整和可验证的示例](https://stackoverflow.com/help/mcve) – AesSedai101

+0

请编辑您的问题以添加完整的堆栈跟踪。 – Reti43

+0

列表中缺少名为9的节点。 – user1190882

回答

0

错误似乎没有启发性的问题的本质在这里,但它只是你有12个节点和13点节点的色彩。在删除了[0,1,1,0,0,1,1,0,1,0,1,1,1]项目之一,问题就会消失。

+0

所以它只是一个问题“的节点数量不适合的节点颜色”,对不对?我想得太多了......非常感谢。 – Yugil