添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

教程

Python 3 Basic Python Advanced Tkinter Python Modules JavaScript Python Numpy Git Matplotlib PyQt5 Data Structure Algorithm

贴士文章

Rust Python Pygame Python Python Tkinter Batch PowerShell Python Pandas Numpy Python Flask Django Matplotlib Plotly Docker Seaborn Matlab Linux Git C Cpp HTML JavaScript jQuery TypeScript Angular React CSS PHP Java Go Node.js Kotlin Csharp Ruby Arduino MongoDB MySQL Postgres R VBA Scala Raspberry Pi

函数参考

Python Pandas Numpy

在本教程中,我们将学习如何在 Python 中更改 seaborn 图中的图例位置。

为此,我们需要禁用默认图例。这可以通过在 plot 函数中将 legend 参数设置为 False 来完成。我们将使用 matplotlib 库中的 matplotlib.pyplot.legend() 函数显式添加图例。

要更改图例的位置,我们将使用此函数中的 loc 参数。我们可以指定图例所需的位置作为该参数的值。

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.lineplot(data=df, legend=False)
plt.legend(labels=["Day1", "Day2"], loc="upper right")

我们还可以指定不同的数字作为此参数的值。不同的数字对应不同的位置。比如 1 代表右上位置,2 代表左上位置等。参考这篇 Matplotlib 文章得到数字与位置关系表。

默认情况下,loc 参数的值为 0,这意味着它会搜索图中的位置,以便发生最小重叠。

我们还可以使用 bbox_to_anchor 参数将图例框放置在图外。bbox_to_anchor 指定图例相对于 loc 参数中指定位置的位置。如果我们使用二元元组设置 bbox_to_anchor 参数,那么它会将它们的值视为沿指定 loc 定位的 x 和 y 值。

import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame(
    {"Day 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day 2": [1, 2, 8, 4, 3, 9, 5, 2]}
sns.lineplot(data=df, legend=False)
plt.legend(labels=["Day1", "Day2"], loc=2, bbox_to_anchor=(1, 1))
            

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