1. 程式人生 > 程式設計 >python matplotlib餅狀圖引數及用法解析

python matplotlib餅狀圖引數及用法解析

這篇文章主要介紹了python matplotlib餅狀圖引數及用法解析,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

在python的matplotlib畫圖函式中,餅狀圖的函式為pie

pie函式引數解讀

plt.pie(x,explode=None,labels=None,colors=None,autopct=None,pctdistance=0.6,shadow=False,labeldistance=1.1,startangle=None,radius=None,counterclock=True,wedgeprops=None,textprops=None,center=(0,0),frame=False)

  • x:指定繪圖的資料;
  • explode:指定餅圖某些部分的突出顯示,即呈現爆炸式;
  • labels:為餅圖新增標籤說明,類似於圖例說明;
  • colors:指定餅圖的填充色;
  • autopct:自動新增百分比顯示,可以採用格式化的方法顯示;
  • pctdistance:設定百分比標籤與圓心的距離;
  • shadow:是否新增餅圖的陰影效果;
  • labeldistance:設定各扇形標籤(圖例)與圓心的距離;
  • startangle:設定餅圖的初始擺放角度;
  • radius:設定餅圖的半徑大小;
  • counterclock:是否讓餅圖按逆時針順序呈現;
  • wedgeprops:設定餅圖內外邊界的屬性,如邊界線的粗細、顏色等;
  • textprops:設定餅圖中文字的屬性,如字型大小、顏色等;
  • center:指定餅圖的中心點位置,預設為原點
  • frame:是否要顯示餅圖背後的圖框,如果設定為True的話,需要同時控制圖框x軸、y軸的範圍和餅圖的中心位置;

例項

1.基本的畫圖函式

import matplotlib.pyplot as plt
#解決中文亂碼問題
# 正常顯示中文標籤
plt.rcParams['font.sans-serif']=['SimHei']
# 用來正常顯示負號
plt.rcParams['axes.unicode_minus']=False
#刻度的大小
plt.rcParams['axes.labelsize'] = 16
#線的粗細
plt.rcParams['lines.linewidth'] = 2
#x軸的大小
plt.rcParams['xtick.labelsize'] = 14
#y軸的大小
plt.rcParams['ytick.labelsize'] = 14
#圖例大小
plt.rcParams['legend.fontsize'] = 14
#圖的大小
plt.rcParams['figure.figsize'] = [12,8]
#=======================================#基本的使用例項
#定義餅的標籤,
labels = ['A','B','C','E']
#每個標籤所佔的比例
x = [15,30,45,10]
#繪製餅圖
plt.pie(x,labels=labels)
plt.show()

注:不加其他引數的使用這個函式,不一定是圓形;而且得到的執行結果根據引數的設定會很大,不建議如此操作。

2.繪製正圓形的餅狀圖

import matplotlib.pyplot as plt
labels = ['A','D']
x = [15,10]
#顯示百分比
plt.pie(x,labels=labels,autopct='%3.2f%%')
#設定x,y的刻度一樣,使其餅圖為正圓
plt.axis('equal')
plt.show()

3.繪製餅狀圖-設定文字標籤的屬性值

import matplotlib.pyplot as plt
labels = ['A',10]
#顯示百分比
#textprops={'fontsize':18,'color':'k'} 設定為字型大小為18,顏色黑色
plt.pie(x,autopct='%3.2f%%',textprops={'fontsize':18,'color':'k'})
#設定x,y的刻度一樣,使其餅圖為正圓
plt.axis('equal')

plt.show()

4.餅狀圖的分離與陰影設定

import matplotlib.pyplot as plt
labels = ['A',10]
#顯示百分比
#餅圖分離
explode = (0,0.1,0)
#設定陰影效果
plt.pie(x,explode=explode,shadow=True)
#設定x,y的刻度一樣,使其餅圖為正圓
plt.axis('equal')

plt.show()

5.起始角度

import matplotlib.pyplot as plt

labels = ['A','D']

x = [15,10]

#顯示百分比
#餅圖分離
explode = (0,0)

#設定陰影效果
#startangle,為起始角度,0表示從0開始逆時針旋轉,為第一塊。
plt.pie(x,shadow=True,startangle=60)

#設定x,y的刻度一樣,使其餅圖為正圓
plt.axis('equal')

plt.show()

6圓心距離與提示標籤並儲存到本地

import matplotlib.pyplot as plt

labels = ['A',為起始角度,0表示從0開始逆時針旋轉,為第一塊。
#pctdistance,百分比的文字離圓心的距離為0.5
plt.pie(x,startangle=60,pctdistance=0.8)

#設定x,y的刻度一樣,使其餅圖為正圓
plt.axis('equal')
plt.legend()
#儲存到本地資料夾
plt.savefig('./餅圖.png')
plt.show()

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。