Matplotlib实例教程(二)饼状图
生活随笔
收集整理的這篇文章主要介紹了
Matplotlib实例教程(二)饼状图
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前言
- 🔗 運行環境:python3
- 🚩 作者:K同學啊
- 📚 選自專欄:《Matplotlib實例教程》
- 🧿 優秀專欄:《Python入門100題》
- 🔥 推薦專欄:《小白入門深度學習》
- 🥇 精選專欄:《深度學習100例》
代碼實現
import matplotlib.pyplot as plt# 長8英寸 寬6英寸,該窗口的分辨率為80 plt.figure(figsize=(8,6), dpi= 80)labels = ['A','B','C','D'] #定義標簽 sizes = [146,223,121,68] #每塊值 colors = ['red','yellowgreen','lightskyblue','yellow'] #每塊顏色定義 explode = (0,0,0.1,0) #將某一塊分割出來,值越大分割出的間隙越大#patches餅圖的返回值,texts1餅圖外label的文本,texts2餅圖內部文本 patches,l_text,p_text= plt.pie(sizes,explode=explode,labels=labels,colors=colors,labeldistance = 1.1, #標簽距圓心半徑倍距離autopct = '%3.2f%%', #數值保留固定小數位shadow = True, #陰影設置startangle =90, #逆時針起始角度設置pctdistance = 0.5) #數值距圓心半徑倍數距離# p_texts餅圖內部文本的,l_texts餅圖外label的文本 #改變文本的大小方法是把每一個text遍歷。調用set_size方法設置它的屬性 for t in l_text:t.set_size(15) for t in p_text:t.set_size(15) # x,y軸刻度設置一致,保證餅圖為圓形 plt.axis('equal') plt.legend() plt.show()比例與數值同時展示
import matplotlib.pyplot as plt# 長8英寸 寬6英寸,該窗口的分辨率為80 plt.figure(figsize=(8,8), dpi= 80)labels = ['A','B','C','D'] #定義標簽 sizes = [146,223,121,68] #每塊值 colors = ['red','yellowgreen','lightskyblue','yellow'] #每塊顏色定義 explode = (0,0,0.1,0) #將某一塊分割出來,值越大分割出的間隙越大def make_autopct(values):def my_autopct(pct):total = sum(values)val = int(round(pct*total/100.0))# 同時顯示數值和占比的餅圖return '{p:.2f}% ({v:d}人)'.format(p=pct,v=val)return my_autopct#patches餅圖的返回值,texts1餅圖外label的文本,texts2餅圖內部文本 patches,l_text,p_text= plt.pie(sizes,explode=explode,labels=labels,colors=colors,labeldistance = 1.1, #標簽距圓心半徑倍距離autopct = make_autopct(sizes), #數值保留固定小數位shadow = True, #陰影設置startangle =90, #逆時針起始角度設置pctdistance = 0.7) #數值距圓心半徑倍數距離# p_texts餅圖內部文本的,l_texts餅圖外label的文本 #改變文本的大小方法是把每一個text遍歷。調用set_size方法設置它的屬性 for t in l_text:t.set_size(15) for t in p_text:t.set_size(15) # x,y軸刻度設置一致,保證餅圖為圓形 plt.axis('equal') plt.legend() plt.show()總結
以上是生活随笔為你收集整理的Matplotlib实例教程(二)饼状图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Matplotlib实例教程(一):柱状
- 下一篇: Matplotlib实例教程(三)折线图