matplotlib 餅圖繪製
阿新 • • 發佈:2019-01-07
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軸的範圍和餅圖的中心位置;
# 匯入第三方模組 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()