更改 Seaborn 图像大小

Manav Narula 2023年1月30日
  1. 使用 seaborn.set() 函数更改 Seaborn 图的大小
  2. 使用 rcParams 函数更改 Seaborn 图的大小
  3. 使用 matplotlib.pyplot.figure() 函数更改 Seaborn 图的大小
  4. 使用 matplotlib.pyplot.gcf() 函数更改 Seaborn 图的大小
  5. 使用 heightaspect 参数更改 Seaborn 图的大小
更改 Seaborn 图像大小

通常,绘图和图形具有某些默认大小,或者它们的尺寸由编译器自动确定。

在本教程中,我们将讨论如何在 Python 中更改 Seaborn 图的大小。

使用 seaborn.set() 函数更改 Seaborn 图的大小

seaborn.set() 函数用于控制 seaborn 图的主题和配置。

函数的 rc 参数可用于控制最终图形的大小。我们将字典作为值传递给此参数,并使用键将其作为 figure.figsize,并将所需的尺寸作为值。

请参考以下代码。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)

sns.set(rc={"figure.figsize": (15, 8)})
p = sns.lineplot(data=df)

使用 rcParams 函数更改 Seaborn 图的大小

seaborn.set() 函数类似,matplotlin.pyplot 模块中的 rcParams 用于控制绘图的样式。我们可以在此处使用 figure.figsize 参数来更改图形的大小。

例如,

from matplotlib import rcParams
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)


rcParams["figure.figsize"] = 15, 8
p = sns.lineplot(data=df)

使用 matplotlib.pyplot.figure() 函数更改 Seaborn 图的大小

matplotlib.pyplot.figure() 函数用于激活图形。我们可以在绘制所需的 Seaborn 图之前使用它。要更改图的大小,我们可以使用 figsize 参数,并为其提供所需的高度和宽度值。

例如,

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)


plt.figure(figsize=(15, 8))
p = sns.lineplot(data=df)

使用 matplotlib.pyplot.gcf() 函数更改 Seaborn 图的大小

matplotlib.pyplot.gcf() 函数用于获取当前图形的实例。我们可以在此实例中使用 set_size_inches() 方法来更改绘图的最终大小。

该方法也适用于 Facetgrid 类型的对象。

例如,

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)


p = sns.lineplot(data=df)
plt.gcf().set_size_inches(15, 8)

使用 heightaspect 参数更改 Seaborn 图的大小

诸如 lmplotcatplotfactorplotjointplot 之类的 seaborn 模块中的不同图形已经具有参数 heightaspect 来控制图形的大小。

以下代码显示了如何使用这些参数。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
)


p = sns.factorplot(data=df, height=8, aspect=15 / 8)
作者: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn