增加饼图matplotlib中标签的字体大小[重复]

Posted

技术标签:

【中文标题】增加饼图matplotlib中标签的字体大小[重复]【英文标题】:Increase font-size of labels in Pie chart matplotlib [duplicate] 【发布时间】:2019-08-05 06:54:59 【问题描述】:

我有一个看起来像这样的饼图:

我尝试使用 textprops='fontsize': 18) 来增加字体大小。但是,它只改变了饼图内的百分比标签的字体大小,而外面的标签不受影响。

我想增加上面饼图中标签A、B、C等的字体大小。

我的代码:

fig1, ax1 = plt.subplots(figsize=(24,12))
flavor_pie = ax1.pie(data2.Count_Of_labels,labels=['A','B','C','D','E','F'], autopct='%.0f%%', shadow=True, colors=colors, 
                     explode= explode1, startangle= -90, textprops='fontsize': 18)

centre_circle = plt.Circle((0,0),0.20,fc='white')
fig = plt.gcf()
fig.gca().add_artist(centre_circle)

ax1.axis('equal')  
plt.tight_layout()
plt.show()

【问题讨论】:

【参考方案1】:

试试:

import matplotlib as mpl
mpl.rcParams['font.size'] = 18.0

或者,

mpl.rcParams.update('font.size': 18)

或者,

import matplotlib.pyplot as plt
plt.rcParams['font.size'] = 18

【讨论】:

【参考方案2】:

您可能使用的是旧版本的 matplotlib;在任何较新的版本中,标签和自动百分比都具有相同的大小。

因此问题归结为如何为标签和自动百分比设置不同的字体大小。

有这样的饼图

import matplotlib.pyplot as plt
fig, ax = plt.subplots()
wedges, labels, autopct = ax.pie([1,2,3,4,3,2],labels=['A','B','C','D','E','F'], 
                                  autopct='%.0f%%', wedgeprops=dict(width=.7))

您可以遍历标签或自动百分比并设置字体大小

for lab in labels:
    lab.set_fontsize(15)

或者一次性设置它们,比如

plt.setp(labels, fontsize=15)

autopct 也类似。

【讨论】:

以上是关于增加饼图matplotlib中标签的字体大小[重复]的主要内容,如果未能解决你的问题,请参考以下文章

以编程方式更改集合视图单元格中标签的字体

无法根据objective-c中标签的文本大小设置单元格大小

更改 matplotlib 中子图的“xticks”和“Yticks”的字体大小和粗体 [重复]

增加 matplotlib 字符串字体大小

javascript如何统计页面中标签的数量

如何更改 matplotlib 中轴对象刻度的字体大小 [重复]