You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python Graphviz包中为节点设置RGB/十六进制自定义颜色

Python Graphviz数值颜色设置方法

Python Graphviz包完全支持数值编码自定义节点颜色,你遇到报错是因为传入的颜色参数格式不符合Graphviz的语法要求。

常用的数值颜色正确写法如下:

  • 十六进制颜色:直接传入以#开头、后接6位十六进制数值的字符串即可,支持RGB和带透明度的RGBA(8位)格式。你需要的RGB(50,50,50)对应的十六进制为#323232,示例代码如下:
from graphviz import Digraph

g = Digraph('example_graph')
g.node('Test Node', color='#323232')
  • 十进制RGB颜色:需要传入格式为rgb(r,g,b)的字符串,三个数值范围为0-255,示例代码如下:
from graphviz import Digraph

g = Digraph('example_graph')
g.node('Test Node', color='rgb(50,50,50)')

如果需要设置颜色透明度,还可以使用#RRGGBBAA格式的8位十六进制字符串,或者rgba(r,g,b,a)格式的字符串,其中a为0-1之间的透明度数值。

错误原因说明

  1. 直接传入RGB元组会触发类型报错,因为graphviz的颜色参数仅接受字符串类型输入
  2. 直接将元组转为字符串'(50, 50, 50)'不符合Graphviz的颜色语法规则,底层引擎无法识别为有效颜色,因此会抛出未知颜色警告, fallback为默认黑色。

内容的提问来源于stack exchange,提问作者Galen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 07:45:07