1. 圓餅圖的概念與應用
圓餅圖,又稱 "派圖",能夠視覺化地呈現整體中各部分的相對大小。如果你曾經問過 10 個朋友他們最喜歡的程式語言,並想用圖表展示結果,圓餅圖就是最佳選擇!它特別適合用來顯示某事物的組成部分,比如公司市場份額或者每天花在程式設計和看貓咪影片上的時間分配。
使用 pie()
函數製作圓餅圖
Matplotlib 提供了一個非常棒的函數 pie()
,讓製作圓餅圖變得像派一樣簡單!
以下是一個基本範例:
import matplotlib.pyplot as plt
# 圖表資料
labels = ['Python', 'JavaScript', 'C++', 'Java']
sizes = [40, 30, 20, 10] # 百分比比例
colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue'] # 區塊顏色
# 畫圖
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=140)
# 設置軸為平等比例
plt.axis('equal')
# 顯示圖表
plt.show()
在這個範例中,我們定義了分類(程式語言)、其數量比例及顏色,然後調用 pie()
函數來創建圖表。參數 autopct='%1.1f%%'
加入了百分比標籤,而 startangle=140
則調整旋轉角度讓圖表更好看。
2. 客製化圓餅圖
圓餅圖就像新年的禮服 —— 你可以根據喜好進行裝飾。以下是一些客製化的方法。
顯示百分比 autopct
參數 autopct
能夠在每個區塊內顯示對應的百分比比例。"%1.1f%%"
指定格式為小數點後一位。
import matplotlib.pyplot as plt
labels = ["貓", "狗", "鳥", "魚"]
sizes = [35, 30, 20, 15]
plt.pie(sizes, labels=labels, autopct="%1.1f%%")
plt.title("寵物受歡迎程度")
plt.show()
突顯某區塊 explode
參數 explode
允許將某些區塊從中心移出,以此來強調某些分類。
import matplotlib.pyplot as plt
labels = ["貓", "狗", "鳥", "魚"]
sizes = [35, 30, 20, 15]
explode = (0.1, 0, 0, 0) # 突顯第一個區塊(貓)
plt.pie(sizes, labels=labels, autopct="%1.1f%%", explode=explode)
plt.title("寵物受歡迎程度")
plt.show()
在這裡,「貓」的區塊被從中心移動了 10% (值為 0.1
),從而吸引更多注意力。
更改區塊顏色 colors
可以通過 colors
參數為每個區塊指定顏色,提升視覺效果。
import matplotlib.pyplot as plt
labels = ["貓", "狗", "鳥", "魚"]
sizes = [35, 30, 20, 15]
colors = ["#ff9999", "#66b3ff", "#99ff99", "#ffcc99"]
plt.pie(sizes, labels=labels, autopct="%1.1f%%", colors=colors)
plt.title("寵物受歡迎程度")
plt.show()
在這個範例中,我們為每個區塊指定了顏色,使圖表更具吸引力。
更改開始角度 startangle
透過設定 startangle
,可以更改圖表的起始角度。例如可以將主要分類置於圖表頂端。
import matplotlib.pyplot as plt
labels = ["貓", "狗", "鳥", "魚"]
sizes = [35, 30, 20, 15]
plt.pie(sizes, labels=labels, autopct="%1.1f%%", startangle=90)
plt.title("寵物受歡迎程度")
plt.show()
參數 startangle=90
將圖表旋轉,使第一個區塊從 90 度角(正上方)開始。
3. 實際例子
雖然圓餅圖是經典工具,但不適用於所有情況。如果有很多小區塊,或者資料難以用圓餅圖呈現,可能需要選擇其他圖形化方式,例如條形圖。記得考慮可讀性以及對觀眾的責任。
範例:市場細分分析
假設我們有市場份額分佈的數據,希望用圓餅圖直觀展示。
import matplotlib.pyplot as plt
# 市場份額資料
labels = ["公司 A", "公司 B", "公司 C", "公司 D"]
sizes = [40, 25, 20, 15]
colors = ["#ff9999", "#66b3ff", "#99ff99", "#ffcc99"]
explode = (0.1, 0, 0, 0) # 突顯公司 A 區塊
plt.pie(sizes, labels=labels, autopct="%1.1f%%", startangle=140, colors=colors, explode=explode)
plt.title("市場份額分佈")
plt.show()
此圖表顯示了公司的市場份額,並突出展示了公司 A 的區塊,強調其市場領導地位。
圓餅圖繪製小貼士
- 控制分類數量: 圓餅圖最適合少量分類。若分類過多,圖表會變得難以理解。
- 加入百分比: 在區塊上顯示百分比能幫助觀眾快速理解數據。
- 利用突顯效果 (explode): 突出重要分類,吸引觀眾注意。
- 選擇合適配色: 顏色應易於區分,特別是當分類超過四個時。
- 考慮替代方案: 若分類太多,應選擇條形圖或柱狀圖替代。
希望這次圓餅圖的小冒險能讓你的 Matplotlib 技能更上一層樓!這是邁向資料視覺化大師的其中一步,利用圖表講述任何故事吧!祝好運,希望你的圖表總能讓人賞心悅目! 🍕
GO TO FULL VERSION