- 設置字體的大小
patches,l_text,p_text=plt.pie(money_rate,explode=explode,labels=names,autopct='%.2f%%')
# l_text是餅圖對着文字大小,p_text是餅圖內文字大小
for t in p_text:
t.set_size(5)
for t in l_text:
t.set_size(6)
- 防止標簽重疊,可以將窗口設置的大一些
plt.figure(figsize=(20, 6.5))
3.源碼
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
matplotlib.rcParams['font.family']='SimHei'
names=np.array(['正義聯盟','東方快車謀殺案','密戰','尋夢環游記','雷神3:諸神黃昏', '全球風暴', '降魔傳','追捕','七十七天','狂獸','其它'])
money=np.array([57767,22354,7916,15969,73853,14839,8725,8716,8318,6764,52222])
money_rate=money/np.sum(money)
explode=np.zeros((len(money)))
explode[4]=0.1
plt.figure(figsize=(20, 6.5))
patches,l_text,p_text=plt.pie(money_rate,explode=explode,labels=names,autopct='%.2f%%')
plt.legend(["雷神3:諸神黃昏","正義聯盟","東方快車謀殺案","尋夢環游記","全球風暴","降魔傳","追捕","七十七天","密戰","狂獸","其它"])
plt.legend(loc='center right')
plt.title('電影排片占比')
plt.axis('equal')
# 設置餅圖內文字大小
for t in p_text:
t.set_size(5)
for t in l_text:
t.set_size(6)
plt.show()
4.結果