餅狀圖(Pie Chart)是一種常見的數據可視化方式,用于展示各部分在整體中的比例關系。Python 提供了多種庫來繪制餅狀圖,其中最常用的是 matplotlib 和 seaborn。本文將詳細介紹如何使用 matplotlib 庫來繪制餅狀圖,并介紹一些常見的定制化選項。
在開始之前,確保你已經安裝了 matplotlib 庫。如果沒有安裝,可以使用以下命令進行安裝:
pip install matplotlib
首先,我們來看一個最簡單的餅狀圖繪制示例。假設我們有一組數據,表示某公司四個季度的銷售額:
import matplotlib.pyplot as plt
# 數據
labels = ['Q1', 'Q2', 'Q3', 'Q4']
sizes = [15, 30, 45, 10]
# 繪制餅狀圖
plt.pie(sizes, labels=labels)
# 顯示圖形
plt.show()
在這個例子中,labels 是每個部分的標簽,sizes 是每個部分的大小。plt.pie() 函數用于繪制餅狀圖,labels 參數用于指定每個部分的標簽。
為了使餅狀圖更加直觀,我們可以為每個部分添加百分比,并為每個部分指定顏色:
import matplotlib.pyplot as plt
# 數據
labels = ['Q1', 'Q2', 'Q3', 'Q4']
sizes = [15, 30, 45, 10]
colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue']
# 繪制餅狀圖
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%')
# 顯示圖形
plt.show()
在這個例子中,colors 參數用于指定每個部分的顏色,autopct 參數用于顯示每個部分的百分比。%1.1f%% 表示顯示一位小數的百分比。
有時候,我們可能需要突出顯示餅狀圖中的某一部分??梢酝ㄟ^ explode 參數來實現:
import matplotlib.pyplot as plt
# 數據
labels = ['Q1', 'Q2', 'Q3', 'Q4']
sizes = [15, 30, 45, 10]
colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue']
explode = (0, 0.1, 0, 0) # 突出顯示 Q2
# 繪制餅狀圖
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', explode=explode)
# 顯示圖形
plt.show()
explode 參數是一個元組,用于指定每個部分的偏移量。在這個例子中,Q2 部分被突出顯示。
為了更清晰地展示每個部分的含義,我們可以為餅狀圖添加圖例:
import matplotlib.pyplot as plt
# 數據
labels = ['Q1', 'Q2', 'Q3', 'Q4']
sizes = [15, 30, 45, 10]
colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue']
explode = (0, 0.1, 0, 0) # 突出顯示 Q2
# 繪制餅狀圖
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', explode=explode)
# 添加圖例
plt.legend(labels, title="Quarters", loc="upper right")
# 顯示圖形
plt.show()
plt.legend() 函數用于添加圖例,title 參數用于指定圖例的標題,loc 參數用于指定圖例的位置。
最后,我們可以將繪制好的餅狀圖保存為圖片文件:
import matplotlib.pyplot as plt
# 數據
labels = ['Q1', 'Q2', 'Q3', 'Q4']
sizes = [15, 30, 45, 10]
colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue']
explode = (0, 0.1, 0, 0) # 突出顯示 Q2
# 繪制餅狀圖
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', explode=explode)
# 添加圖例
plt.legend(labels, title="Quarters", loc="upper right")
# 保存圖形
plt.savefig('pie_chart.png')
# 顯示圖形
plt.show()
plt.savefig() 函數用于將圖形保存為文件,支持多種格式,如 PNG、JPG、PDF 等。
通過 matplotlib 庫,我們可以輕松地繪制出各種餅狀圖,并通過調整參數來實現不同的定制化效果。無論是簡單的餅狀圖,還是帶有百分比、顏色、突出顯示和圖例的復雜餅狀圖,matplotlib 都能滿足我們的需求。希望本文能幫助你更好地理解和使用 Python 繪制餅狀圖。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。