Seaborn中怎么自定義子圖繪制

小億
99
2024-05-17 11:18:16

在Seaborn中,我們可以使用FacetGrid對(duì)象來(lái)自定義子圖繪制。FacetGrid可以幫助我們將數(shù)據(jù)分組,并在每個(gè)子圖中繪制不同的數(shù)據(jù)。

以下是一個(gè)示例代碼,演示如何使用FacetGrid來(lái)自定義子圖繪制:

import seaborn as sns
import matplotlib.pyplot as plt

# 創(chuàng)建一個(gè)示例數(shù)據(jù)集
tips = sns.load_dataset("tips")

# 創(chuàng)建一個(gè)FacetGrid對(duì)象,設(shè)置行和列的分組變量
g = sns.FacetGrid(tips, row="sex", col="time")

# 在每個(gè)子圖中繪制數(shù)據(jù)
g.map(sns.scatterplot, "total_bill", "tip")

# 添加標(biāo)簽
g.set_axis_labels("Total Bill", "Tip")

# 添加標(biāo)題
g.set_titles("{col_name} {row_name}")

# 調(diào)整子圖之間的間距
plt.subplots_adjust(top=0.9)
g.fig.suptitle("Tips by Total Bill and Time")

# 顯示圖形
plt.show()

在這個(gè)示例中,我們使用FacetGrid對(duì)象來(lái)創(chuàng)建一個(gè)包含不同行和列分組的子圖網(wǎng)格。然后使用map()方法在每個(gè)子圖中繪制數(shù)據(jù)。我們還可以使用set_axis_labels()方法和set_titles()方法來(lái)添加軸標(biāo)簽和子圖標(biāo)題。最后,調(diào)用plt.subplots_adjust()方法調(diào)整子圖之間的間距,并使用plt.show()方法顯示圖形。

0