我有一个包含6个切片的饼图,我期待更改饼图中显示的默认颜色。
据我所知,使用.fillColor
我可以改变切片的颜色。
pie_chart = Drawing(200, 200)
pc = Pie()
pc.x = 65
pc.y = 15
pc.width = 150
pc.height = 150
pc.data = [65,13,12,9,1]
pc.labels = ['Name','Another','Yet Another','Test','Stack','Flow')
We can change the color of a slice using:
pc.slices[1].fillColor=red
但是我期待改变所有6个切片的颜色,因此我尝试了:
colores=[red,brown,violet,yellow,green,pink]
pc.slices.fillColors=colores
它输出错误:
AttributeError: Illegal attribute 'fillColors' in class WedgeProperties
我的问题是:如何在一行代码中更改每个切片的颜色?有没有财产可以这样做?
答案 0 :(得分:1)
没有属性fillColors
:它是单数,fillColor
;你不能简单地改变名称,并希望解析器找出你的意思。
正如TemporalWolf已经引导你走向,文档展示了如何通过循环执行此操作。在你的情况下,像:
for index, color in enumerate(colores):
pc.slices[i].fillColor = colores[i]
这假设您的图表中有len(colores)
个切片。