如何使用python的matplotlib库输出彩色图形(每个顶点都有自己的 colored颜色 )?是否有任何方法可以调整每个顶点的特定 colored颜色 ?

不使用 colored颜色 的代码示例:

import networkx as nx
import matplotlib.pyplot as plt

class Graph:
    def __init__(self, edges):
        self._edges = edges

    def visualize(self):
        vg = nx.Graph()
        vg.add_edges_from(self._edges)
        nx.draw_networkx(vg)
        plt.show()

nodes = [['A', 'B'], ['A', 'C'], ['B', 'D'], ['C', 'D'],
         ['C', 'E'], ['D', 'F'], ['E', 'F']]
G = Graph(nodes)
G.visualize()

这就是我想看到的:

推荐答案

我不确定您是只想为这种情况更改 colored颜色 ,还是想让它更灵活—使用list comprehension,但AFAIK draw_networkx有一个参数,它接受字符串列表或RGB个浮点元组,所以您只能准备一个 colored颜色 列表:

import networkx as nx
import matplotlib.pyplot as plt

class Graph:
    def __init__(self, edges, colors):
        self._edges = edges
        self._colors = colors

    def visualize(self):
        vg = nx.Graph()
        vg.add_edges_from(self._edges)    
        nx.draw_networkx(vg, node_color=self._colors)
        plt.show()



nodes = [['A', 'B'], ['A', 'C'], ['B', 'D'], ['C', 'D'],
         ['C', 'E'], ['D', 'F'], ['E', 'F']]

colors = ['green', 'red', 'red', 'green', 'green', 'red']

G = Graph(nodes, colors)
G.visualize()

Python相关问答推荐

如何列出Python脚本中使用的所有包?

Pandas基于另一列的价值的新列

取相框中一列的第二位数字

使用Curses for Python保存和恢复终端窗口内容

单击Python中的复选框后抓取数据

Numpy索引argsorted使用integer数组,同时保留排序顺序

已删除的构造函数调用另一个构造函数

过载功能是否包含Support Int而不是Support Int?

Python json.转储包含一些UTF-8字符的二元组,要么失败,要么转换它们.我希望编码字符按原样保留

非常奇怪:tzLocal.get_Localzone()基于python3别名的不同输出?

如何在Windows上用Python提取名称中带有逗号的文件?

如何在polars(pythonapi)中解构嵌套 struct ?

在线条上绘制表面

当从Docker的--env-file参数读取Python中的环境变量时,每个\n都会添加一个\'.如何没有额外的?

递归访问嵌套字典中的元素值

Pandas—在数据透视表中占总数的百分比

在ubuntu上安装dlib时出错

计算分布的标准差

如何在Python中获取`Genericums`超级类型?

使用BeautifulSoup抓取所有链接