详解matplotlib中的ax.legend()

一、ax.legend参数

在matplotlib中,ax.legend()函数主要用于为图形添加图例。在传递参数时,我们可以使用一系列关键字参数来定制图例的位置,大小,字体等属性。以下是ax.legend()支持的常用参数:

参数名	            类型	  说明
loc	            string	指定图例的位置
bbox_to_anchor	    tuple	指定图例的锚点(外部边界或图表顶部左上)
ncol	            int	    指定图例的列数
fontsize	        int	    指定图例的字体大小
title	            string	图例的标题
frame_on	        bool	是否显示图例的边框
shadow	            bool	是否显示图例的阴影
fancybox	        bool	是否为图例的边框添加圆角
framealpha	        float	图例的边框透明度

其中,loc参数可以指定图例在哪个位置出现。它可以采用一个字符串,表示需要显示图例的位置,如’upper right’、’lower left’等。另外,loc参数也可以接收一个长度为2的元组来指定图例的位置。例如,(0.5, 0.5)表示图例的位置位于图形区域的中心。

二、ax.legend设置边框粗细

ax.legend()函数中的frame_linewidth参数用于设置图例边框的粗细程度。frame_linewidth参数需要指定一个浮点数来表示边框的粗细程度,例如:

import matplotlib.pyplot as plt
plt.style.use('ggplot')
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [2, 4, 6], label='line 1')
ax.plot([1, 2, 3], [1, 3, 5], label='line 2')
legend = ax.legend(loc='upper center', frame_linewidth=2)

在上述代码中,我们将frame_linewidth参数设置为2,表示图例边框的粗细为2个单位。图例将会位于图表的中上方。

三、ax.legend设置边框颜色

在matplotlib中,ax.legend()函数中的frame_color参数用于指定图例边框的颜色。

import matplotlib.pyplot as plt
plt.style.use('ggplot')
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [2, 4, 6], label='line 1')
ax.plot([1, 2, 3], [1, 3, 5], label='line 2')
legend = ax.legend(loc='upper center', frame_color='red')

上述代码中,我们将frame_color参数设置为’red’,表示图例边框的颜色为红色。图例将会位于图表的中上方。

四、ax.legend的字体大小

在matplotlib中,ax.legend()函数中的fontsize参数用于指定图例的字体大小。fontsize参数需要指定一个整数来表示字体的大小,例如:

import matplotlib.pyplot as plt
plt.style.use('ggplot')
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [2, 4, 6], label='line 1')
ax.plot([1, 2, 3], [1, 3, 5], label='line 2')
legend = ax.legend(loc='upper center', fontsize=14)

在上述代码中,我们将fontsize参数设置为14,表示图例的字体大小为14个单位。图例将会位于图表的中上方。

五、ax.legend实例

import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline

# Data
x = np.linspace(-10, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)

# Plot
fig, ax = plt.subplots(figsize=(10,6))
ax.plot(x, y1, label='sin(x)', linewidth=2)
ax.plot(x, y2, label='cos(x)', linewidth=2)

# Legend
legend = ax.legend(loc='upper center', shadow=True, fontsize=16)
legend.get_frame().set_facecolor('#FFFFFF') # 设置图例边框颜色
plt.setp(legend.get_lines(), linewidth=4) # 设置标签线宽
plt.show()

上述代码中,我们生成了两个曲线数据y1和y2,并分别用ax.plot()将它们绘制到了图形上。随后,我们通过ax.legend()函数为该图形添加了一个图例。图例的位置位于图表顶部中心,阴影效果开启,字体大小为16。

在图例的生成后,我们对其进行了一系列自定义设置:设置图例边框为白色,标签线宽为4。

最终,我们调用plt.show()函数显示该图形。图形的结果如下所示:

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/157814.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-18 20:02
下一篇 2024-11-18 20:02

相关推荐

  • Python最强大的制图库——Matplotlib

    Matplotlib是Python中最强大的数据可视化工具之一,它提供了海量的制图、绘图、绘制动画的功能,通过它可以轻松地展示数据的分布、比较和趋势。下面将从多个方面对Matplo…

    编程 2025-04-29
  • Python三大:NumPy、Pandas、matplotlib

    本文将详细介绍三大Python数据处理及可视化库——NumPy、Pandas以及matplotlib,为读者提供从基础使用到应用场景的全面掌握。 一、NumPy NumPy是Pyt…

    编程 2025-04-27
  • Python画图:Matplotlib的使用

    Matplotlib是Python中最常用的画图库之一。它可以轻松地创建各种类型的图表,包括直方图、散点图、线图、饼图等等。本文将从以下几个方面对Matplotlib的使用进行详细…

    编程 2025-04-27
  • 神经网络代码详解

    神经网络作为一种人工智能技术,被广泛应用于语音识别、图像识别、自然语言处理等领域。而神经网络的模型编写,离不开代码。本文将从多个方面详细阐述神经网络模型编写的代码技术。 一、神经网…

    编程 2025-04-25
  • Linux sync详解

    一、sync概述 sync是Linux中一个非常重要的命令,它可以将文件系统缓存中的内容,强制写入磁盘中。在执行sync之前,所有的文件系统更新将不会立即写入磁盘,而是先缓存在内存…

    编程 2025-04-25
  • Linux修改文件名命令详解

    在Linux系统中,修改文件名是一个很常见的操作。Linux提供了多种方式来修改文件名,这篇文章将介绍Linux修改文件名的详细操作。 一、mv命令 mv命令是Linux下的常用命…

    编程 2025-04-25
  • Python输入输出详解

    一、文件读写 Python中文件的读写操作是必不可少的基本技能之一。读写文件分别使用open()函数中的’r’和’w’参数,读取文件…

    编程 2025-04-25
  • nginx与apache应用开发详解

    一、概述 nginx和apache都是常见的web服务器。nginx是一个高性能的反向代理web服务器,将负载均衡和缓存集成在了一起,可以动静分离。apache是一个可扩展的web…

    编程 2025-04-25
  • 详解eclipse设置

    一、安装与基础设置 1、下载eclipse并进行安装。 2、打开eclipse,选择对应的工作空间路径。 File -> Switch Workspace -> [选择…

    编程 2025-04-25
  • git config user.name的详解

    一、为什么要使用git config user.name? git是一个非常流行的分布式版本控制系统,很多程序员都会用到它。在使用git commit提交代码时,需要记录commi…

    编程 2025-04-25

发表回复

登录后才能评论