1. 程式人生 > >Python Matplotlib畫圖 ——餅圖

Python Matplotlib畫圖 ——餅圖

函式引數

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軸的範圍和餅圖的中心位置;

程式碼

import matplotlib.pyplot as plt
 
# 設定繪圖的主題風格(不妨使用R中的ggplot分隔)
plt.style.use('ggplot')
 
# 構造資料
edu = [0.2515,0.3724,0.3336,0.0368,0.0057]
labels = ['中專','大專','本科','碩士','其他']
 
explode = [0,0.1,0,0,0]  # 用於突出顯示大專學歷人群
colors=['#9999ff','#ff9999','#7777aa','#2442aa','#dd5555'] # 自定義顏色
 
# 中文亂碼和座標軸負號的處理
plt.
rcParams['font.sans-serif'] = ['Microsoft YaHei'] plt.rcParams['axes.unicode_minus'] = False # 將橫、縱座標軸標準化處理,保證餅圖是一個正圓,否則為橢圓 plt.axes(aspect='equal') # 控制x軸和y軸的範圍 plt.xlim(0,4) plt.ylim(0,4) # 繪製餅圖 plt.pie(x = edu, # 繪圖資料 explode=explode, # 突出顯示大專人群 labels=labels, # 新增教育水平標籤 colors=
colors, # 設定餅圖的自定義填充色 autopct='%.1f%%', # 設定百分比的格式,這裡保留一位小數 pctdistance=0.8, # 設定百分比標籤與圓心的距離 labeldistance = 1.15, # 設定教育水平標籤與圓心的距離 startangle = 180, # 設定餅圖的初始角度 radius = 1.5, # 設定餅圖的半徑 counterclock = False, # 是否逆時針,這裡設定為順時針方向 wedgeprops = {'linewidth': 1.5, 'edgecolor':'green'},# 設定餅圖內外邊界的屬性值 textprops = {'fontsize':12, 'color':'k'}, # 設定文字標籤的屬性值 center = (1.8,1.8), # 設定餅圖的原點 frame = 1 )# 是否顯示餅圖的圖框,這裡設定顯示 # 刪除x軸和y軸的刻度 plt.xticks(()) plt.yticks(()) # 新增圖示題 plt.title('芝麻信用失信使用者教育水平分佈') # 顯示圖形 plt.show()

本文來自 roguesir 的CSDN 部落格 ,全文地址請點選:https://blog.csdn.net/roguesir/article/details/78178365?utm_source=copy