天天看點

資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖

導包

一定不要忘記導入我們需要的包啊!!!!

import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif']=['SimHei']  #用來正常顯示中文标簽
plt.rcParams['axes.unicode_minus']=False    #用來正常顯示正負号
plt.show()
           

學習網站

餅圖學習網站:https://www.cnblogs.com/biyoulin/p/9565350.html

餅圖

  1. plt.pie()的參數
  • x:畫餅圖的資料,sum(x)>1,歸一化;sum(x)<1,畫sum(x)個圓
x = [0.3, 0.4, 0.2] #sum(x)<1
plt.pie(x)
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
y = [1, 5, 6] #sum(y)>1
plt.pie(y)
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • labels:每一塊餅圖外側顯示的說明文字
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • explode:每一塊離開中心的距離,0:在原來的餅圖裡;
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • startangle:起始繪制角度,預設從x軸正方向逆時針畫起,如設定為90則從y軸正方向畫起
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • shadow:在餅圖下回一個陰影,預設:False,即不畫陰影
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • labeldistance:label标記的繪制位置,相當于半徑的比例,預設值為1.1,如果小于1則繪制在餅圖内側
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • autopct:控制餅圖内百分比設定,可以使用format字元串或者format function。——’%1.1f’指小數點前後位數(沒有用空格補齊)
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        autopct='%1.1f') #無百分号
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        autopct='%1.1f%%') #有百分号
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • pctdistance:類似于labeldistance,指定autopct的位置刻度,預設值為0.6
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        autopct='%1.1f%%',
        pctdistance=0.8)
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • radius:控制餅圖半徑,預設值為1
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • counterclook:指定指針方向,預設為True逆時針
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • wedgeprops:字典類型,預設值為None,例如:wedgeprops={‘linewidth’:3}指令為設定wedge線寬為3
  • textprops:設定标簽和比例文字的格式,預設值為None
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        textprops={'fontsize':'20', 'color':'lightsalmon'})
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  • center:圖示中心的位置,浮點類型的清單,預設值為(0,0)
  • frame:布爾類型,預設值為False,若為True,表示繪制帶有表的軸架構
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  1. 正圓
plt.pie(y, labels=["strawberry", "mango", "peach"]) 
plt.axis('equal')#顯示正圓
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
  1. 組合圖形
plt.pie(y, labels=["strawberry", "mango", "peach"], frame=True)
plt.xlim(-1, 1)   #設定x軸顯示範圍 
plt.ylim(-1, 1)   #設定y軸顯示範圍 
plt.grid()    #顯示坐标網格線
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖
plt.pie(y,
        labels=["strawberry", "mango", "peach"],
        textprops={'fontsize':'20', 'color':'lightsalmon'})
plt.axis('equal')#顯示正圓
plt.legend()#顯示圖例
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖

圓環圖

x = [1, 5, 2]
plt.pie(x, labels=["strawberry", "mango", "peach"])
plt.pie([1], colors='w', radius=0.7)
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖

内嵌環形餅圖

plt.figure(dpi = 200) #更加清晰
elements = ['面粉', '砂糖', '奶油', '果醬', '堅果']
a = [0.4, 0.15, 0.2, 0.1, 0.15]
b = [0.3, 0.25, 0.2, 0.1, 0.15]
colors = ['c', 'g', 'b', 'orange', 'pink']
outer_colors = colors
inner_colors = colors

wedges1, texts1, autotexts1 = plt.pie(a,
                          autopct = '%3.1f%%',
                          pctdistance = 0.85,
                          textprops = dict(color='w'),
                          colors = outer_colors,
                          wedgeprops = dict(width = 0.3, edgecolor = 'w'))
wedges2, texts2, autotexts2 = plt.pie(b,
                          radius = 0.7,
                          colors = inner_colors,
                          autopct = '%3.1f%%',
                          pctdistance = 0.75,
                          textprops = dict(color='w'),
                          wedgeprops = dict(width = 0.3, edgecolor = 'w'))
plt.axis('equal')#顯示正圓
plt.legend(wedges1,
           elements,
           fontsize = 12,
           title = '配料表',
           loc = 1,
           bbox_to_anchor = (0.91, 0, 0.4, 1))
plt.title('不同果醬面包配料百分比')
           
資料可視化——Matplotlib03導包學習網站餅圖圓環圖内嵌環形餅圖

繼續閱讀