Python繪制餅圖調節字體大小、防止標簽重疊解決方法


  1. 設置字體的大小
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)
  1. 防止標簽重疊,可以將窗口設置的大一些
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.結果


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM