Python - 如何将饼图中的 autopct 文本颜色更改为白色?
Python - How to change autopct text color to be white in a pie chart?
pie(fbfrac,labels = fblabel,autopct='%1.1f%%',pctdistance=0.8,startangle=90,colors=fbcolor)
我的图表显示如我所愿,但如果图表是白色而不是黑色,文本在图表中会更显眼。
Return value:
If autopct is not None, return the tuple (patches, texts, autotexts),
where patches and texts are as above, and autotexts is a list of
Text instances for the numeric labels.
您需要更改 autotexts
的颜色;这只需 set_color()
:
_, _, autotexts = pie(fbfrac,labels = fblabel,autopct='%1.1f%%',pctdistance=0.8,startangle=90,colors=fbcolor)
for autotext in autotexts:
autotext.set_color('white')
这会产生(Hogs and Dogs example):
您可以使用 pyplot.pie
的 textprops
参数在一行中完成。很简单:
plt.pie(data, autopct='%1.1f%%', textprops={'color':"w"})
你的情况:
pie(fbfrac, labels=fblabel, autopct='%1.1f%%', pctdistance=0.8, startangle=90, colors=fbcolor, textprops={'color':"w"})
可以找到一个有启发性的例子 here。
饼图对象returnspatches, texts, autotexts
。您可以循环遍历 texts
和 autotext
以及 set_color
.
import matplotlib.pyplot as plt
fblabels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
fbfrac = [15, 30, 45, 10]
fbcolor = ["blue", "green", "red", "orange"]
fig, ax = plt.subplots()
patches, texts, autotexts = ax.pie(fbfrac, labels = fblabels, autopct='%1.1f%%',pctdistance=0.8,startangle=90,colors=fbcolor)
[text.set_color('red') for text in texts]
texts[0].set_color('blue')
[autotext.set_color('white') for autotext in autotexts]
plt.show()
Output
此外,您可以更改单个标签的颜色,访问列表项,例如:texts[0].set_color('blue')
你可以获得更多灵感here。
pie(fbfrac,labels = fblabel,autopct='%1.1f%%',pctdistance=0.8,startangle=90,colors=fbcolor)
我的图表显示如我所愿,但如果图表是白色而不是黑色,文本在图表中会更显眼。
Return value:
If autopct is not None, return the tuple (patches, texts, autotexts), where patches and texts are as above, and autotexts is a list of Text instances for the numeric labels.
您需要更改 autotexts
的颜色;这只需 set_color()
:
_, _, autotexts = pie(fbfrac,labels = fblabel,autopct='%1.1f%%',pctdistance=0.8,startangle=90,colors=fbcolor)
for autotext in autotexts:
autotext.set_color('white')
这会产生(Hogs and Dogs example):
您可以使用 pyplot.pie
的 textprops
参数在一行中完成。很简单:
plt.pie(data, autopct='%1.1f%%', textprops={'color':"w"})
你的情况:
pie(fbfrac, labels=fblabel, autopct='%1.1f%%', pctdistance=0.8, startangle=90, colors=fbcolor, textprops={'color':"w"})
可以找到一个有启发性的例子 here。
饼图对象returnspatches, texts, autotexts
。您可以循环遍历 texts
和 autotext
以及 set_color
.
import matplotlib.pyplot as plt
fblabels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
fbfrac = [15, 30, 45, 10]
fbcolor = ["blue", "green", "red", "orange"]
fig, ax = plt.subplots()
patches, texts, autotexts = ax.pie(fbfrac, labels = fblabels, autopct='%1.1f%%',pctdistance=0.8,startangle=90,colors=fbcolor)
[text.set_color('red') for text in texts]
texts[0].set_color('blue')
[autotext.set_color('white') for autotext in autotexts]
plt.show()
Output
此外,您可以更改单个标签的颜色,访问列表项,例如:texts[0].set_color('blue')
你可以获得更多灵感here。