如何自定义 Matplotlib 图例

17 Mar 2025 | 6 分钟阅读

在本教程中,我们将解释如何学习修改 matplotlib 的图例。Matplotlib 是一个著名的数据可视化软件。它是一个用 Python 编写的绘图库,并具有用于数值计算的 NumPy 扩展。

图例是图上的一个区域,用于描述组成图的每个元素。一个图表可以是简单的,因为它是。如果我们包含标题、X 轴标签、Y 轴标签和图例,它将更加清晰。当我们查看名称时,我们可以轻松确定图表代表的内容以及它代表的数据类型。

首先,让我们看看如何使用 matplotlib 创建图像图例。

语法

Matplotlib 中图例的语法是

它可以由以下术语描述

  • legend(): legend() 自动确定要显示的元素。它通过显示用“label”关键字参数标记的每个图来实现。
  • legend(labels): X 轴的名称和 Y 轴的名称,显示在图例中
  • legend(handles and labels): 要添加到图例的线条列表。组合标签和句柄可让您完全控制图例中应包含哪些信息。建议图例和句柄的长度相等。

代码

输出

How to Customize Legends with Matplotlib

如何自定义图例

图例为图表添加了意义。添加字体、来源位置等使图例更具可见性且易于识别。让我们看看可用于修改图表图例的各种程序。

地点

有时图例可能不正确或未放置在正确的位置。Matplotlib 允许我们指定放置图例的位置。这样,我们可以将图例放置在不会遮挡图表的地方。这意味着图表将显得更整洁、更干净。

语法

可以通过遵循以下步骤来传递它

  • "upper left", "upper right", "lower left", "lower right": 它位于图表的相应区域。
  • "upper-center", "lower center", "center left", "center right": 它位于其中间的边缘。
  • "center": 它位于图表的正中心。
  • "Best": 它不会与艺术家交叉。

代码

输出

How to Customize Legends with Matplotlib

字体大小

为了改善图例的外观,我们还可以更改图例的大小。通过将字体尺寸参数连接到操作,我们可以像修改图表标题一样修改图例框内的字体大小。

语法

这可以传递为 'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'

代码

输出

How to Customize Legends with Matplotlib

图例颜色

有时我们会认为给图例框着色会使它看起来更吸引人,并帮助它从图表中脱颖而出。Matplotlib 还可以通过更改文本、背景甚至图例显示的边缘的颜色来帮助我们改变图例的外观。

语法

  • labelcolor: 用于更改文本的颜色。
  • facecolor: 用于更改图例的背景颜色
  • edgecolor: 用于更改图例的边缘颜色

代码

输出

How to Customize Legends with Matplotlib

在上面的示例中,我们可以清楚地分辨哪些关键字参数为图例块添加了哪种颜色。

标记属性

这里,如果我们看图例框,

语法

标记放在前面,标签放在后面。markerfirst 参数允许我们修改标记的位置。如果将其设置为 False,则标记和标签的位置会交换。

代码

输出

How to Customize Legends with Matplotlib

改变外观

图例可以包含一些基本的 CSS 属性,例如创建阴影、添加边框、圆角,并允许我们将图例设为透明框,如果您不想让图例框遮挡图表中的那些微小细节。

shadow: 此参数为图例创建阴影。

frameon: 为图例添加边框。

fancybox: 为标题添加圆角。

framealpha: 为图例背景提供透明度。

示例 1: 添加阴影和圆角

输出

How to Customize Legends with Matplotlib

示例 2: 移除图例框的边框

输出

How to Customize Legends with Matplotlib

图例标题

为图例添加标题对于包含在图例框中至关重要。title 参数可以让我们为图例创建标题,title_size 可以让我们为名称选择特定的字体大小。

语法

title: 它将为图例添加标题

title_fontize: 它将为标题添加大小。

这可以是 'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'

代码

输出

How to Customize Legends with Matplotlib

结论

在本教程中,我们讨论了如何自定义图例,例如添加标题、阴影、移除边框、更改字体大小和颜色等。