使用Graphviz python对节点进行排名

2024-04-26 02:41:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用一个大数据集并将其排序为一个图形。图形的节点根据它们所表示的数据着色。我想相同颜色的节点在图上有相同的排名,但我真的不知道如何做到这一点。当我需要Graphviz的Python语法时,我在网上找到的大多数示例代码都是点语法。你知道吗

我试过用每种特定的颜色列出节点列表,然后遍历它们以获得相同的排名,但似乎不起作用。你知道吗

for k in c:
        if k in s:
            if s[k] == 7:
                dot.node(str(k), str(k), color = 'lightgoldenrod1', style = 'filled')
                twelve.append(str(k))
            elif s[k] == 8:
                dot.node(str(k), str(k), color = 'cyan', style = 'filled')  
                thirteen.append(str(k))
            elif s[k] == 9:
                dot.node(str(k), str(k), color = 'magenta1', style = 'filled')  
                fourteen.append(str(k))
            elif s[k] == 10:
                dot.node(str(k), str(k), color = 'mediumspringgreen', style = 'filled')
                fifteen.append(str(k))
            elif s[k] == 11:
                dot.node(str(k), str(k), color = 'peachpuff', style = 'filled') 
                sixteen.append(str(k))
            elif s[k] == 12:
                dot.node(str(k), str(k), color = 'peru', style = 'filled')
                seventeen.append(str(k))
            elif s[k] == 13:
                dot.node(str(k), str(k), color = 'bisque', style = 'filled') 
                eighteen.append(str(k))
            else:
                print(s[k]) 
for w in fourteen:
        dot.graph_attr['rank']='same'; dot.node(w) 
for w in fifteen:
        dot.graph_attr['rank']='same'; dot.node(w) 

我似乎没有收到任何错误-只是在图形的输出没有差异。任何帮助都将不胜感激。你知道吗


Tags: 数据innode图形for节点style颜色