matplotlib——图例legend相关设置

图例 legend()

import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
什么是图例?

图例是集中于图的一角或者一侧的各种符号和颜色代表内容的说明,有助于更好地理解图

设置方法
①直接在plot中设置label属性值 最后调用legend() 方法即可

x = np.linspace(-5, 5)
y = np.random.randint(10, 40, len(x))
z = np.random.randint(20, 30, len(x))

plt.plot(x, y, label='one', color='blue')
plt.plot(x, z, label='two', color='red')
plt.legend()

在这里插入图片描述

但是图例的位置不好,我们需要自己设置位置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PNfwREy5-1648530372730)(attachment:image-2.png)]

在 legend() 方法中设置loc属性的值用于改变图例的位置

plt.plot(x, y, label='sinx', color='blue')
plt.plot(x, z, label='cosx', color='red')
plt.legend(loc='upper right')

在这里插入图片描述

显示每个点的坐标在图像中

首先介绍一下 zip() 方法 该方法可以将传入的n个元素数量相等的列表压缩成一个元组,元组的每个元素就是一个n元组

a = np.random.randint(10 ,30, 5)
b = np.random.randint(10 ,30, 5)
ab = zip(a, b)
for m,n in ab:
    print(m, '  ', n)
24    11
16    10
17    13
13    17
19    15

用该方法就可实现需求

p = [-3, -2, -1, 0, 1, 2, 3]
q =list(np.random.randint(10, 30, len(p)))
pq = zip(p, q)
for m,n in pq:
    plt.text(m, n, f'({m},{n})')
plt.plot(p, q, label='sinx', color='blue')
plt.legend(loc='upper right')

在这里插入图片描述


matplotlib图例边框是指在绘制图例时,图例框的边界线。可以通过设置不同的参数来控制图例边框的外观。 在matplotlib中,可以使用legend函数来添加图例,并通过参数设置图例的边框。其中,常用的参数包括frameon、edgecolor和linewidth等。 - frameon参数用于控制是否显示图例的边框,其值为True表示显示,False表示不显示。默认值为True。 - edgecolor参数用于设置图例边框的颜色,可以接受各种颜色的字符串或RGBA元组,默认值为'black'。 - linewidth参数用于设置图例边框的线宽,其值为一个浮点数,默认值为1.0。 以下是一个例子: ```python import matplotlib.pyplot as plt # 绘制数据曲线 x = [1, 2, 3] y = [4, 5, 6] plt.plot(x, y, label='数据曲线') # 添加图例设置边框 legend = plt.legend(frameon=True, edgecolor='red', linewidth=2) # 显示图形 plt.show() ``` 在这个例子中,legend函数被用来添加图例,并通过frameon参数设置为显示图例边框,edgecolor参数设置为红色边框线,linewidth参数设置为2.0的线宽。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [【python学习】-matplotlib图形设置(线宽、标签、颜色、图框、线类型、图例大小位置、图框大小及像素等)](https://blog.csdn.net/qq_40481843/article/details/106231257)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Matplotlib(6)——图例设置](https://blog.csdn.net/weixin_44830542/article/details/111114684)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值