着色饼图Matplotlib.pyplot与十六进制代码

时间:2017-03-24 12:07:19

标签: python matplotlib colors data-analysis

我试图指定使用带有十六进制码的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"#"
无效的十六进制颜色字符串"#"

我无法弄清楚,为什么会这样。

1 个答案:

答案 0 :(得分:1)

如名称colors所示,pie需要多种颜色作为输入。所以会发生的是,字符串'#123456'被解释为一个列表,第一个元素是"#",它不是有效颜色(其他元素也不是)。

因此,如果您希望饼图的所有切片都具有相同的颜色,请使用单个元素列表

colors = ['#123456']

否则在列表中添加更多颜色。