如何在Seaborn中建立餅圖?


餅圖是資料視覺化中最常用的圖表型別之一。餅圖是一個圓形圖表,被分成多個扇形來表示資料集中不同類別的比例。

Seaborn是一個基於Matplotlib構建的Python資料視覺化庫,Matplotlib是另一個流行的Python視覺化庫。Seaborn提供了一個高階介面,用於建立各種統計圖形,並且可以生成比Matplotlib更精緻美觀的視覺化效果。

Matplotlib是一個用於在Python中建立基本圖表和圖形的低階庫。它提供了建立更復雜視覺化的基礎模組,但與Seaborn相比,需要更多程式碼來生成視覺化效果。Seaborn透過提供一組預設主題和美學來簡化建立複雜視覺化的過程。

Seaborn提供了一組函式,用於建立各種型別的統計圖,例如散點圖、線圖和條形圖。它還提供了一些函式來建立更專業的圖表型別,例如熱力圖、小提琴圖和因子圖。這些圖旨在突出資料中的關係和模式。

以下是使用Python安裝Seaborn和Matplotlib的步驟:

  • 開啟命令提示符或終端視窗。

  • 透過鍵入以下命令檢查系統是否安裝了Python:python --version

    如果安裝了Python,則會顯示版本號。如果未安裝Python,請從官方網站下載並安裝Python。

  • 使用pip安裝Seaborn,鍵入以下命令:“pip3 install seaborn

  • 使用pip安裝Matplotlib,鍵入以下命令:“pip3 install matplotlib

現在讓我們關注示例。

示例

考慮以下程式碼。

# Importing libraries 
import matplotlib.pyplot as plt
import seaborn as sns

# Declaring data

# sample data, replace with your own
data = [76, 84, 62, 93, 79]

# labels for data, replace with your own
keys = ['Class A', 'Class B', 'Class C', 'Class D', 'Class E']

# Plotting data on chart
plt.pie(data, labels=keys, autopct='%.0f%%')

# Add title to the chart
plt.title('Distribution of grades across different classes')

# Displaying chart
plt.show() 

解釋

  • 我們宣告資料變數,其中包含每個類別的值列表,以及鍵變數,其中包含每個類別的標籤。

  • 我們使用seaborn.color_palette()函式定義要用於圖表的顏色調色盤。

  • 我們使用plt.pie()函式將資料繪製到圖表上。我們傳入datakeyscoloursautopct引數來自定義圖表的顯示方式。autopct引數格式化圖表上顯示的百分比。

  • 我們使用plt.title()函式向圖表新增標題。

  • 我們使用plt.show()函式顯示圖表。

輸出

執行此程式碼後,將彈出一個新視窗,其中包含我們的餅圖。

示例

讓我們再舉一個例子來更好地理解它的工作原理。考慮以下程式碼。

# Importing libraries
import matplotlib.pyplot as plt
import seaborn as sns

# Declaring data

# sample data, replace with your own
data = [60, 25, 35, 45, 55]

# labels for data, replace with your own
keys = ['Category A', 'Category B', 'Category C', 'Category D', 'Category E']

# Declaring exploding pie
explode = [0.1, 0, 0, 0, 0.1]

# Define Seaborn color palette to use
palette_color = sns.color_palette('dark')

# Plotting data on chart
plt.pie(data, labels=keys, colors=palette_color,
 explode=explode, autopct='%.0f%%')
 
# Add title to the chart
plt.title('Distribution of items across different categories')

# Displaying chart
plt.show() 

解釋

  • 我們已更新資料變數,使其包含每個類別的新值集。您可以將其替換為您自己的資料。

  • 我們已更新鍵變數,使其包含每個類別的新標籤。您可以將其替換為您自己的標籤。

  • 我們聲明瞭一個explode變數,它指定了餅圖的每個扇形要分離多少。在此示例中,我們分離了第一個和最後一個扇形。您可以根據需要修改它。

  • 我們已更新Seaborn顏色調色盤以使用深色方案。如果您願意,可以選擇不同的調色盤。

  • 我們使用plt.title()函式向圖表添加了標題。

  • 我們使用plt.show()函式顯示了圖表。

輸出

執行此程式碼後,將彈出一個新視窗,其中包含我們的餅圖。

結論

總之,使用Seaborn和Matplotlib建立餅圖是一個簡單的過程,只需幾個步驟即可完成。透過匯入必要的庫、宣告資料和定義顏色調色盤,您可以輕鬆繪製一個餅圖,顯示不同類別中值的分佈。

更新於:2023年4月20日

9000+ 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.