我试图指定使用带有十六进制码的matplotlib.pyplot创建的饼图的颜色
示例:
import matplotlib.pyplot as plt
values = [1,2,3]
fig1, ax1 = plt.subplots()
ax1.pie(values, autopct = '%1.1f%%', colors = '#123456')
plt.savefig('Title.pdf')
但每次发生此错误:
ValueError:to_rgba:无效的rgba arg"#"
to_rgb:无效的rgb arg"#"
无效的十六进制颜色字符串"#"
我无法弄清楚,为什么会这样。
答案 0 :(得分:1)
如名称colors
所示,pie
需要多种颜色作为输入。所以会发生的是,字符串'#123456'
被解释为一个列表,第一个元素是"#"
,它不是有效颜色(其他元素也不是)。
因此,如果您希望饼图的所有切片都具有相同的颜色,请使用单个元素列表
colors = ['#123456']
否则在列表中添加更多颜色。