如何使用Seaborn調色盤為箱線圖著色?
Seaborn是一個流行的Python庫,它提供了一個高階介面來建立資訊豐富且美觀的視覺化效果。Seaborn的關鍵特性之一是能夠自定義繪圖的調色盤,允許使用者突出顯示資料的特定方面。在本文中,我們將探討如何有效地使用Seaborn的調色盤為箱線圖著色。
理解箱線圖
在瞭解自定義選項之前,必須對箱線圖有一個基本的瞭解。箱線圖是一種標準化的顯示資料集分佈的方式,提供有關中位數、四分位數和潛在異常值的資訊。它由一個表示四分位距 (IQR) 的框組成,框內有一條線表示中位數。須從框延伸以顯示資料的範圍,而框外的單個點表示異常值。
匯入Seaborn和載入資料
首先,我們需要匯入必要的庫並載入一個要處理的資料集。Seaborn通常匯入為sns,我們可以使用內建資料集“tips”作為我們的示例。
import seaborn as sns import matplotlib.pyplot as plt # Load the "tips" dataset tips = sns.load_dataset("tips")
建立基本箱線圖
讓我們從使用Seaborn的預設調色盤建立基本箱線圖開始。透過將變數x和y指定為“tips”資料集中的列,我們可以建立一個箱線圖,顯示不同工作日總賬單金額的分佈。生成的繪圖將使用Seaborn的預設調色盤。
示例
import seaborn as sns import matplotlib.pyplot as plt # Load the "tips" dataset tips = sns.load_dataset("tips") sns.boxplot(x="day", y="total_bill", data=tips) plt.show()
輸出

自定義調色盤
Seaborn提供了多種自定義繪圖(包括箱線圖)調色盤的方法。讓我們實現其中一些選項。
使用內建調色盤:Seaborn提供了多個內建調色盤,可以透過color_palette()函式訪問。這些調色盤提供了一系列視覺上吸引人的配色方案。例如,我們可以使用“Blues”調色盤。
import seaborn as sns import matplotlib.pyplot as plt # Load the "tips" dataset tips = sns.load_dataset("tips") sns.boxplot(x="day", y="total_bill", data=tips, palette="Blues") plt.show()
輸出
import seaborn as sns import matplotlib.pyplot as plt # Load the "tips" dataset tips = sns.load_dataset("tips") sns.boxplot(x="day", y="total_bill", data=tips, palette="Blues") plt.show()
使用順序調色盤:順序調色盤非常適合表示連續變化的資料。Seaborn中一個流行的順序調色盤是“viridis”。以下是順序調色盤的實現。透過將palette引數設定為“viridis”,我們建立了一個使用從淺到深的順序調色盤的箱線圖。
import seaborn as sns import matplotlib.pyplot as plt # Load the "tips" dataset tips = sns.load_dataset("tips") sns.boxplot(x="day", y="total_bill", data=tips, palette="viridis") plt.show()
輸出

使用分類調色盤:分類調色盤旨在有效區分不同的類別。其中一個調色盤是“Set3”。讓我們用它為我們的箱線圖著色。透過指定palette="Set3",我們的箱線圖將為每個類別顯示不同的顏色,從而更容易區分工作日。
import seaborn as sns import matplotlib.pyplot as plt # Load the "tips" dataset tips = sns.load_dataset("tips") sns.boxplot(x="day", y="total_bill", data=tips, palette="Set3") plt.show()
輸出

建立自定義調色盤:Seaborn允許使用者透過指定各種格式(例如,RGB、HTML顏色名稱)的顏色列表來建立自定義調色盤。讓我們建立一個包含三種顏色的自定義調色盤。透過將custom_palette列表提供給palette引數,箱線圖將使用列表中指定的顏色按其出現的順序著色。
import seaborn as sns import matplotlib.pyplot as plt # Load the "tips" dataset tips = sns.load_dataset("tips") custom_palette = ["#FF7F50", "#87CEEB", "#7FFF00"] sns.boxplot(x="day", y="total_bill", data=tips, palette=custom_palette) plt.show()
輸出

結論
在本文中,我們討論瞭如何使用seaborn調色盤為箱線圖著色並自定義箱線圖的外觀。我們探索了使用Seaborn的內建調色盤、順序調色盤、分類調色盤,甚至建立自定義調色盤來自定義調色盤的各種方法。透過有效地利用顏色,我們可以增強資料的視覺表示並提高其可解釋性。