小编Dup*_*ond的帖子

python networkx中的图例

我有以下代码来绘制带有节点的图形,但我没有添加适当的图例:(抱歉,我无法发布图像,看来我没有足够的声誉)

我想要一个有 4 种颜色的图例,例如“浅蓝色 = 过时,红色 = 草稿,黄色 = 实装,深蓝色 = init”。

我看过一些带有“分散”的解决方案,但我认为它太复杂了。有没有办法做到这一点plt.legend(G.nodes)

这是代码:

import networkx as nx
import matplotlib.pyplot as plt
import numpy as np
G=nx.Graph()
G.add_node("kind1")
G.add_node("kind2")
G.add_node("Obsolete")
G.add_node("Draft")
G.add_node("Release")
G.add_node("Initialisation")
val_map = {'kind1': 2,'kind2': 2,'Obsolete': 2,'Initialisation': 1,'Draft': 4,'Release': 3}
values = [val_map.get(node, 0) for node in G.nodes()]
nodes = nx.draw(G, cmap = plt.get_cmap('jet'), node_color = values)

plt.legend(G.nodes())
plt.show() 
Run Code Online (Sandbox Code Playgroud)

python legend networkx

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

legend ×1

networkx ×1

python ×1