Python Matplotlib畫圖 ——餅圖
阿新 • • 發佈:2019-01-10
函式引數
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