图例legend语法及设置

news2024/12/28 3:35:17

(1)设置图例位置
使用loc参数
plt.legend(loc=‘lower left’)

0‘best’
1‘upper right’
2‘upper left’
3‘lower left’
4‘lower right’
5‘right’
6‘center left’
7‘center right’
8‘lower center’
9‘upper center’
10‘center’

(2)设置图例字体
#设置字体大小
fontsize : int or float or {‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’}

(3)设置图例边框及背景
plt.legend(loc=‘best’,frameon=False) #去掉图例边框
plt.legend(loc=‘best’,edgecolor=‘blue’) #设置图例边框颜色
plt.legend(loc=‘best’,facecolor=‘blue’) #设置图例背景颜色,若无边框,参数无效

(4)设置图例标题
plt.legend(loc=‘best’,title=‘figure 1 legend’) #去掉图例边框

  1. 案例:设置图例legend到图形边界外
#主要是bbox_to_anchor的使用
box = ax1.get_position()
ax1.set_position([box.x0, box.y0, box.width , box.height* 0.8])
ax1.legend(loc='center', bbox_to_anchor=(0.5, 1.2),ncol=3)  
  1. 案例:显示多图例legend
import matplotlib.pyplot as plt
import numpy as np
x = np.random.uniform(-1, 1, 4)
y = np.random.uniform(-1, 1, 4)
p1, = plt.plot([1,2,3])
p2, = plt.plot([3,2,1])
l1 = plt.legend([p2, p1], ["line 2", "line 1"], loc='upper left')
p3 = plt.scatter(x[0:2], y[0:2], marker = 'D', color='r')
p4 = plt.scatter(x[2:], y[2:], marker = 'D', color='g')
# This removes l1 from the axes.
plt.legend([p3, p4], ['label', 'label1'], loc='lower right', scatterpoints=1)
# Add l1 as a separate artist to the axes
plt.gca().add_artist(l1)      

在这里插入图片描述
3. 案例:

import matplotlib.pyplot as plt
line1, = plt.plot([1,2,3], label="Line 1", linestyle='--')
line2, = plt.plot([3,2,1], label="Line 2", linewidth=4)
# 为第一个线条创建图例
first_legend = plt.legend(handles=[line1], loc=1)
# 手动将图例添加到当前轴域
ax = plt.gca().add_artist(first_legend)
# 为第二个线条创建另一个图例
plt.legend(handles=[line2], loc=4)
plt.show()

在这里插入图片描述

原文链接https://blog.csdn.net/helunqu2017/article/details/78641290,感谢作者辛勤付出,仅作笔记使用,侵删

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/189015.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

项目看板开发经验分享(二)——事业部能源监控看板(进度条拟柱状图图表、圆柱形柱状图、图表左右滚动进度条、导航轮播按钮)

系列第二篇,话不多说,直接进入正题 事业部能源监控看板展示视频1、进度条组件 因为整个看板有四处地方用到,结合上一期提到的内容,我们优先考虑将这个模块做成组件 UED给的样式用echarts会很麻烦,我们优先考虑用eleme…

活体识别2: 综述类资源收集

说明 我自己不算专业的算法工程师,只是兼做一些算法的事。接触活体识别这个领域有些摸不清门路,所以网上有些综述类的文章和论文对我来说很重要,让我在对这个领域的知识脉络一无所知的时候有个大概的感性认识。 我这里罗列下我感觉不错的文…

互联网正在化有形为无形,这是一场深刻而又彻底的嬗变

如果放在几年前,你是万万无法想到互联网会蜕变成今天这样一副模样。尽管如此,这样一种蜕变却在真实地发生着。不知道你有没有发现就连前两年火爆的短视频人们都懒得刷了。所有的这一切都在告诉我们,互联网正在发生一场深刻而又彻底的嬗变。如…

【ML入门】anaconda环境搭建

【ML入门】anaconda环境搭建 一、安装anaconda anaconda简介 直接安装python不是更快吗,为什么使用anaconda? 可以理解anaconda是一个大容器(类似docker),里面可以建立多个python虚拟环境,对于不同的工…

harbor不停机更换自定义证书

1、问题起源 今天在使用docker推镜像提示证书问题,查看是harbor的自签名证书过期了,报错如下 由于harbor是使用helm部署,以容器方式运行在k8s集群中,无法直接修改证书信息,需要通过更新secret更新证书 2、生成自签名…

论文投稿指南——中文核心期刊推荐(食品工业)

【前言】 🚀 想发论文怎么办?手把手教你论文如何投稿!那么,首先要搞懂投稿目标——论文期刊 🎄 在期刊论文的分布中,存在一种普遍现象:即对于某一特定的学科或专业来说,少数期刊所含…

云计算|OpenStack|社区版OpenStack安装部署文档(二---OpenStack运行环境搭建)

前言: 一个良好的运行环境对于任何一个部署工作来说都是必须的,俗话说 万事开头难,其实很多部署工作失败的原因在于初始环境没有正确的配置,因此,按照官网的部署文档并结合自己的实际情况,配置一个合理的O…

JavaScript对象~

String对象: 它是 JavaScript 的一种基本的数据类型 String 对象的 length 属性声明了该字符串中的字符数,String 类定义了大量操作字符串的方法,例如从字符串中提取字符或子串,或者检索字符或子串 需要注意的是,Ja…

Java图形化界面---进度条

目录 一、进度条的介绍 二、创建进度条 三、简单案例 四、子线程创建进度条 (1)为什么要使用子线程创建进度条 (2)子线程创建进度条的代码 五、创建进度对话框 (1)如何创建进度对话框 (2&…

win32Openssl -1_1_1下载安装与使用

1、下载 https://mp.csdn.net/mp_blog/creation/editor?spm1001.2014.3001.5352 此处我下载的版本是: 2、安装 双击安装,可以自定义安装路径。我的安装路径是:D:\openssl1\OpenSSL-Win32 3、VS2022中使用 使用场景:计算MD5校…

shiro拦截axios请求导致@RequireRole注解失效

文章目录ShiroRequiresRole注解对于axios请求无效场景再现解决方案网上的解决方案最近在整理一个自己以前做过的系统,想要添加一些功能,发现shiro框架出现了点问题,觉得这个错误应该还是蛮有价值的,就写出来和大家分享下… ShiroR…

PostgreSQL11 | 数据类型和运算符

上一篇文章整理并拓展了原书《PostgreSql11从入门到精通》第四章的内容,详细讲述了有关数据库表的创建、修改与删表 PostgreSQL11 | pgsql建表、改表与删表http://t.csdn.cn/ojgCl这一篇整理并拓展原书第五章(书第73页起)的内容。 数据类型和…

【C++】从0到1入门C++编程学习笔记 - 提高编程篇:模板

文章目录一、模板的概念二、函数模板2.1 函数模板语法2.2 函数模板注意事项2.3 函数模板案例2.4 普通函数与函数模板的区别2.5 普通函数与函数模板的调用规则2.6 模板的局限性三、类模板3.1 类模板语法3.2 类模板与函数模板区别3.3 类模板中成员函数创建时机3.4 类模板对象做函…

【Linux】编辑器——vim的使用

环境:centos7.6,腾讯云服务器Linux文章都放在了专栏:【Linux】欢迎支持订阅🌹vim的基本概念vim是什么?vim是一款多模式的编辑器,是vi的升级版本,在兼容vi指令的同时,还带有一些新的特…

Linux主机下连接远程postgresql数据库、容器版postgresql数据库

背景 简单啰嗦一下背景,想看解决方案的,直接跳过本章节。 最近在预研postgresql的功能,其中有个场景就是需要在系统中ssh到postgresql集群上执行psql命令。但是我只有容器版的postgresql,并不能直接ssh到容器中。而ssh到我自己的…

Spring5 框架新功能(Webflux)

目录 1、SpringWebflux 介绍 2、响应式编程(Java 实现) 3、响应式编程(Reactor 实现) 1、SpringWebflux 介绍 (1)SpringWebflux 是 Spring5 添加新的模块,用于 web 开发的,功能和…

JDBC用PrepareStatement解决SQL注入

什么是sql注入?SQL注入(SQL injection)是因为应用程序在执行SQL语句的时候没有正确的处理用户输入字符串,将用户输入的恶意字符串拼接到了SQL语句中执行,从而导致了SQL注入。例如:当你的用户名为 qwert or 11;# 密码为123&#xf…

springmvc拦截器及源码分析

springmvc拦截器是我们项目开发中用到的一个功能,常常用于对Handler进行预处理和后处理。本案例来演示一个较简单的springmvc拦截器的使用,并通过分析源码来探究拦截器的执行顺序是如何控制的。1、springmvc拦截器使用1.1 项目初始搭建1.1.1 创建一个mav…

如何用ffmpeg截取视频片段截取时间不准确的坑

之前在工作中,有遇到需要程序化截取视频片段的场景,这里使用ffmpeg命令行就可以很容易实现,这里也记录下我们使用过程中遇到的坑,希望对大家也有所帮助。    举个例子,当我们要截取视频文件中input.mp4的第15秒到第9…

windows+python+bleak+BLE低功耗蓝牙通讯连接

前言 1.为什么选bleak   参考这篇知乎:https://zhuanlan.zhihu.com/p/577687336   windows端使用python连接常规的BLE设备(蓝牙4.0),仅考虑bleak模块(排除pybluez、pybluez2、pygatt)。 2.本文主要参…