Matplotlib 餅圖

2022-07-04 17:51 更新

我們可以使用 pyplot 中的 pie() 方法來繪制餅圖。

pie() 方法語法格式如下:

matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=0, radius=1, counterclock=True, wedgeprops=None, textprops=None, center=0, 0, frame=False, rotatelabels=False, *, normalize=None, data=None)[source]

參數(shù)說明:

x:浮點型數(shù)組,表示每個扇形的面積。

explode:數(shù)組,表示各個扇形之間的間隔,默認(rèn)值為0。

labels:列表,各個扇形的標(biāo)簽,默認(rèn)值為 None。

colors:數(shù)組,表示各個扇形的顏色,默認(rèn)值為 None。

autopct:設(shè)置餅圖內(nèi)各個扇形百分比顯示格式,%d%% 整數(shù)百分比,%0.1f 一位小數(shù), %0.1f%% 一位小數(shù)百分比, %0.2f%% 兩位小數(shù)百分比。

labeldistance:標(biāo)簽標(biāo)記的繪制位置,相對于半徑的比例,默認(rèn)值為 1.1,如 <1則繪制在餅圖內(nèi)側(cè)。

pctdistance::類似于 labeldistance,指定 autopct 的位置刻度,默認(rèn)值為 0.6。

shadow::布爾值 True 或 False,設(shè)置餅圖的陰影,默認(rèn)為 False,不設(shè)置陰影。

radius::設(shè)置餅圖的半徑,默認(rèn)為 1。

startangle::起始繪制餅圖的角度,默認(rèn)為從 x 軸正方向逆時針畫起,如設(shè)定 =90 則從 y 軸正方向畫起。

counterclock:布爾值,設(shè)置指針方向,默認(rèn)為 True,即逆時針,F(xiàn)alse 為順時針。

wedgeprops :字典類型,默認(rèn)值 None。參數(shù)字典傳遞給 wedge 對象用來畫一個餅圖。例如:wedgeprops={'linewidth':5} 設(shè)置 wedge 線寬為5。

textprops :字典類型,默認(rèn)值為:None。傳遞給 text 對象的字典參數(shù),用于設(shè)置標(biāo)簽(labels)和比例文字的格式。

center :浮點類型的列表,默認(rèn)值:(0,0)。用于設(shè)置圖標(biāo)中心位置。

frame :布爾類型,默認(rèn)值:False。如果是 True,繪制帶有表的軸框架。

rotatelabels :布爾類型,默認(rèn)為 False。如果為 True,旋轉(zhuǎn)每個 label 到指定的角度。

以下實例我們簡單實用 pie() 來創(chuàng)建一個柱形圖:

實例

import matplotlib.pyplot as plt
import numpy as np

y = np.array([35, 25, 25, 15])

plt.pie(y)
plt.show()

顯示結(jié)果如下:

設(shè)置餅圖各個扇形的標(biāo)簽與顏色:

實例

import matplotlib.pyplot as plt
import numpy as np

y = np.array([35, 25, 25, 15])

plt.pie(y,
        labels=['A','B','C','D'], # 設(shè)置餅圖標(biāo)簽
        colors=["#d5695d", "#5d8ca8", "#65a479", "#a564c9"], # 設(shè)置餅圖顏色
       )
plt.title("W3Cschool Pie Test") # 設(shè)置標(biāo)題
plt.show()

顯示結(jié)果如下:


突出顯示第二個扇形,并格式化輸出百分比:

實例

import matplotlib.pyplot as plt
import numpy as np

y = np.array([35, 25, 25, 15])

plt.pie(y,
        labels=['A','B','C','D'], # 設(shè)置餅圖標(biāo)簽
        colors=["#d5695d", "#5d8ca8", "#65a479", "#a564c9"], # 設(shè)置餅圖顏色
        explode=(0, 0.2, 0, 0), # 第二部分突出顯示,值越大,距離中心越遠(yuǎn)
        autopct='%.2f%%', # 格式化輸出百分比
       )
plt.title("W3Cschool Pie Test")
plt.show()


注意:默認(rèn)情況下,第一個扇形的繪制是從 x 軸開始并逆時針移動:


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號