当前位置: 首页 > news >正文

plt常用函数介绍一

目录

  • 前言
  • plt.figure()
  • plt.subplot()
  • plt.subplots()
  • plt.xticks()
  • plt.xlim()

前言

Matplotlib是Python中的一个库,它是数字的-NumPy库的数学扩展。 Pyplot是Matplotlib模块的基于状态的接口。在Pyplot中可以使用各种图,例如线图,轮廓图,直方图,散点图,3D图等。

plt.figure()

plt.figure() 是 Matplotlib 库中的一个函数,用于创建一个新的图形窗口或图形对象。在使用 Matplotlib 进行数据可视化时,我们通常会使用 plt.figure() 来创建一个新的图形对象,然后在这个图形对象上绘制图表、图像或子图等内容。

该函数的语法为:

plt.figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=<class 'matplotlib.figure.Figure'>, clear=False, **kwargs)

参数说明:

  1. num: 图形的编号,如果为None,则创建一个新的图形窗口,如果指定了编号,则可以通过 plt.figure(num) 调用该图形窗口。
  2. figsize: 指定图形的尺寸,以元组 (width, height) 的形式指定,单位为英寸。
  3. dpi:每英寸点数,用于指定图形的分辨率。
  4. facecolor: 图形的背景色。
  5. edgecolor: 图形的边框颜色。
  6. frameon:是否显示边框。
  7. FigureClass: 用于指定图形对象的类。
  8. clear: 是否清除图形对象。

示例:

import matplotlib.pyplot as plt# 创建一个新的图形对象
plt.figure(figsize=(8, 6), dpi=80)# 绘制图表、图像等内容
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])# 显示图形
plt.show()

在这里插入图片描述

plt.subplot()

plt.subplot() 是 Matplotlib 库中的一个函数,用于在一个图形窗口中创建一个或多个子图。在使用 Matplotlib 进行数据可视化时,我们通常会使用 plt.subplot() 来创建一个子图,并在这个子图上绘制具体的图表、图像等内容。

该函数的语法为:

plt.subplot(nrows, ncols, index, **kwargs)

参数说明:

  1. nrows: 子图网格的行数。
  2. ncols: 子图网格的列数。
  3. index: 子图的索引,从左上角开始,从左到右,从上到下依次递增。

subplot可以将figure划分为n个子图,但每条subplot命令只会创建一个子图 ,如果要绘制多个子图,可以考虑使用for 循环。

示例:

import matplotlib.pyplot as plt# plt.figure(figsize = (10,6))# 创建一个 2x2 的子图网格,并选择第一个子图进行绘制
plt.subplot(2, 2, 1)
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])# 选择第二个子图进行绘制
plt.subplot(2, 2, 2)
plt.bar(['A', 'B', 'C', 'D'], [10, 20, 15, 30])# 选择第三个子图进行绘制
plt.subplot(2, 2, 3)
plt.scatter([1, 2, 3, 4], [1, 4, 9, 16])# 选择第四个子图进行绘制
plt.subplot(2, 2, 4)
plt.pie([30, 20, 25, 25], labels=['A', 'B', 'C', 'D'])# 显示图形
plt.show()

在这里插入图片描述

plt.subplots()

plt.subplots() 是 Matplotlib 库中的一个函数,用于创建一个新的图形窗口并返回一个包含所有子图的 Figure 对象和 Axes 对象数组。在使用 Matplotlib 进行数据可视化时,我们通常会使用 plt.subplots() 来创建一个包含多个子图的图形窗口。

该函数的语法为:

fig, ax = plt.subplots(nrows=1, ncols=1, sharex=False, sharey=False, squeeze=True, subplot_kw=None, gridspec_kw=None, **fig_kw)

参数说明:

  1. nrows: 子图网格的行数。
  2. ncols: 子图网格的列数。
  3. sharex: 是否共享x轴刻度。
  4. sharey: 是否共享y轴刻度。
  5. squeeze: 是否压缩返回的 Axes 数组。
  6. subplot_kw: 用于创建每个子图的关键字参数。
  7. gridspec_kw:用于创建子图网格的关键字参数。
  8. fig_kw: 用于创建图形窗口的关键字参数。

示例:

import matplotlib.pyplot as plt# 创建一个包含2x2子图的图形窗口
fig, ax = plt.subplots(nrows=2, ncols=2)# 在第一个子图中绘制折线图
ax[0, 0].plot([1, 2, 3, 4], [1, 4, 9, 16])# 在第二个子图中绘制散点图
ax[0, 1].scatter([1, 2, 3, 4], [1, 4, 9, 16])# 在第三个子图中绘制柱状图
ax[1, 0].bar(['A', 'B', 'C', 'D'], [10, 20, 15, 30])# 在第四个子图中绘制饼图
ax[1, 1].pie([30, 20, 25, 25], labels=['A', 'B', 'C', 'D'])# 显示图形
plt.show()

在这里插入图片描述

plt.xticks()

plt.xticks() 是 Matplotlib 库中用于设置 x 轴刻度的函数。它允许我们自定义 x 轴上的刻度位置和标签。

该函数的语法为:

plt.xticks(ticks=None, labels=None, **kwargs)

参数说明:

  1. ticks:要设置的刻度位置的列表或数组。
  2. labels:与刻度位置对应的标签列表或数组。
  3. **kwargs:其他关键字参数,用于控制刻度的外观样式,例如颜色、字体大小等。

在 Matplotlib 中 plt.ticks() 函数 表示的是刻度, plt.xticks() 就表示x 轴刻度,plt.yticks() 就表示y 轴刻度。plt.xticks([]) # 不显示x 轴刻度
plt.yticks([]) # 不显示y 轴刻度。

示例:

import matplotlib.pyplot as plt# 创建一个简单的折线图
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]
plt.plot(x, y)# 设置 x 轴刻度的位置和标签
plt.xticks([1, 2, 3, 4, 5], ['A', 'B', 'C', 'D', 'E'])# 显示图形
plt.show()

在这里插入图片描述

plt.xlim()

plt.xlim() 是 Matplotlib 库中用于设置 x 轴显示范围的函数。它允许我们指定 x 轴的数据范围,即设置 x 轴的最小值和最大值。

该函数的语法为:

plt.xlim(left, right)

参数说明:

  1. left:x 轴的最小值。
  2. right:x 轴的最大值。

在 Matplotlib中的 plt.xlim() 函数用来显示x轴的作图范围,plt.ylim() 用来显示y轴的作图范围。

示例:

import matplotlib.pyplot as plt# 创建一个简单的折线图
x = [1, 2, 3, 4, 5,7]
y = [2, 3, 5, 7, 11,16]
plt.plot(x, y)# 设置 x 轴的显示范围
plt.xlim(1, 5)# 显示图形
plt.show()

在这里插入图片描述

相关文章:

plt常用函数介绍一

目录 前言plt.figure()plt.subplot()plt.subplots()plt.xticks()plt.xlim() 前言 Matplotlib是Python中的一个库&#xff0c;它是数字的-NumPy库的数学扩展。 Pyplot是Matplotlib模块的基于状态的接口。在Pyplot中可以使用各种图&#xff0c;例如线图&#xff0c;轮廓图&#…...

基于ExtendSim的 电子制造 仿真模型

说明&#xff1a; 此模型表示电路板制造设施。该过程有4个步骤&#xff1a; *焊料制备 *组件放置 *烤箱 *检查 详情&#xff1a; *烤箱的容量为10张卡&#xff0c;但如果烤箱循环开始时仅能处理5张卡&#xff0c;则最多只能处理5张。 *如果检查员发现问题&#xff0c;他们将修理…...

BGP 路由反射器

转载&#xff1a;BGP 路由反射器 / 实验介绍: / 原理概述 缺省情况下&#xff0c;路由器从它的一个 IBGP 对等体那里接收到的路由条目不会被该路由器再传递给其他IBGP对等体&#xff0c;这个原则称为BGP水平分割 原则&#xff0c;该原则的根本作用是防止 AS 内部的 BGP 路由…...

CSRF高级防御绕过

1&#xff09;回顾low级别做过csrf页面的密码重置&#xff0c;重复之前的操作&#xff0c;我们发现级别调整中级之后&#xff0c;报错如下 2&#xff09;检查源码 进入dvwa源码&#xff0c;查找到checktoken&#xff1a; 3&#xff09;在dvwa-csrf页面上&#xff0c;抓包 http…...

MySQL安装文档-Windows

文章目录 MySQL安装1. 安装2. 配置 MySQL安装 1. 安装 1). 双击官方下来的安装包文件 2). 根据安装提示进行安装 安装MySQL的相关组件&#xff0c;这个过程可能需要耗时几分钟&#xff0c;耐心等待。 输入MySQL中root用户的密码,一定记得记住该密码 2. 配置 安装好MySQL之后…...

html TAB、table生成

1. 代码 <!DOCTYPE html> <head> <meta charset"UTF-8"> <title>Dynamic Tabs with Table Data</title> <style> /* 简单的样式 */ .tab-content { display: none; border: 10px solid #ccc; padding: 30px; mar…...

2024!再见前端!

各位朋友大家晚上好&#xff0c;夜深了&#xff0c;睡不着&#xff0c;想想还是写一篇文章和大家说再见吧&#xff01; 自2014年入行前端以来&#xff0c;满打满算差不多整整十年了&#xff0c;这十年可以说是见证了中国整个互联网的起飞到全盛时期。这期间经历了电商、金融、…...

【源码+文档+调试讲解】人事管理系统设计与实现Python

摘 要 人事管理系统的目的是让使用者可以更方便的将人、设备和场景更立体的连接在一起。能让用户以更科幻的方式使用产品&#xff0c;体验高科技时代带给人们的方便&#xff0c;同时也能让用户体会到与以往常规产品不同的体验风格。 与安卓&#xff0c;iOS相比较起来&#xff…...

基于注意力机制的图表示学习:GRAPH-BERT模型

人工智能咨询培训老师叶梓 转载标明出处 图神经网络&#xff08;GNNs&#xff09;在处理图结构数据方面取得了显著的进展&#xff0c;但现有模型在深层结构中存在性能问题&#xff0c;如“悬挂动画问题”和“过平滑问题”。而且图数据内在的相互连接特性限制了大规模图输入的并…...

linux服务器安装原生的php环境

在CentOS上安装原生的PHP环境相对简单。下面是一个详细的步骤指南&#xff0c;适用于CentOS 7及更高版本。 ### 第一步&#xff1a;更新系统 首先&#xff0c;确保你的系统是最新的&#xff1a; sudo yum update -y ### 第二步&#xff1a;安装EPEL和Remi仓库 1. **安装EP…...

数电学习基础(逻辑门电路+)

1.逻辑门电路 1.1逻辑门电路的简介 1.1.1各种逻辑门电路的简介 基本概念 &#xff08;1&#xff09;实现基本逻辑运算和常用逻辑运算的电路称为逻辑门电路&#xff0c;简称门电路。逻辑门电路是组成各种数字电路的基本单元电路。将构成门电路的元器件制作一块半导体芯片上再…...

【艾思科蓝】Spring Boot实战:零基础打造你的Web应用新纪元

第七届人文教育与社会科学国际学术会议&#xff08;ICHESS 2024&#xff09;_艾思科蓝_学术一站式服务平台 更多学术会议请看&#xff1a;https://ais.cn/u/nuyAF3 目录 一、Spring Boot简介 1.1 Spring Boot的诞生背景 1.2 Spring Boot的核心特性 二、搭建开发环境 2.1…...

C++ 二叉树

1. 二叉搜索树 1.1 二叉搜索树概念 二叉搜索树又称二叉排序树&#xff0c;他或者是一棵空树&#xff0c;或者是具有以下性质的二叉树&#xff1a; ①若它的左子树不为空&#xff0c;则左子树上所有节点的值都小于根节点的值 ②若它的右子树不为空&#xff0c;则右子树上所有节…...

初探IT世界:从基础到未来

初探IT世界&#xff1a;从基础到未来 1. 引言 随着科技的不断发展&#xff0c;IT&#xff08;信息技术&#xff09;已经成为全球经济的支柱之一。从软件开发、网络安全到数据分析和人工智能&#xff0c;IT 领域为我们的日常生活提供了许多不可或缺的技术服务。无论你是初学者…...

一区黏菌算法+双向深度学习+注意力机制!SMA-BiTCN-BiGRU-Attention黏菌算法优化双向时间卷积双向门控循环单元融合注意力机制多变量回归预测

一区黏菌算法双向深度学习注意力机制&#xff01;SMA-BiTCN-BiGRU-Attention黏菌算法优化双向时间卷积双向门控循环单元融合注意力机制多变量回归预测 目录 一区黏菌算法双向深度学习注意力机制&#xff01;SMA-BiTCN-BiGRU-Attention黏菌算法优化双向时间卷积双向门控循环单元…...

机器翻译之Bahdanau注意力机制在Seq2Seq中的应用

目录 1.创建 添加了Bahdanau的decoder 2. 训练 3.定义评估函数BLEU 4.预测 5.知识点个人理解 1.创建 添加了Bahdanau的decoder import torch from torch import nn import dltools#定义注意力解码器基类 class AttentionDecoder(dltools.Decoder): #继承dltools.Decoder写…...

MyBatis 入门教程-搭建入门工程

Maven作为一个优秀的项目构建和管理工具,在日常的开发中被大多数开发者使用,后续的项目也是基于Maven来构建。 创建一个Maven项目 利用IDEA创建项目工具来创建一个Maven项目 添加MyBatis的依赖 这里可以从Maven仓库地址中进行查看, https://mvnrepository.com/ 从这里可…...

CVE-2024-2389 未经身份验证的命令注入

什么是 Progress Flowmon? Progress Flowmon 是一种网络监控和分析工具,可提供对网络流量、性能和安全性的全面洞察。Flowmon 将 Nette PHP 框架用于其 Web 应用程序。 未经身份验证的路由 我们开始在“AllowedModulesDecider.php”文件中枚举未经身份验证的端点,这是一个描…...

C++初阶-list用法总结

目录 1.迭代器的分类 2.算法举例 3.push_back/emplace_back 4.insert/erase函数介绍 5.splice函数介绍 5.1用法一&#xff1a;把一个链表里面的数据给另外一个链表 5.2 用法二&#xff1a;调整链表当前的节点数据 6.unique去重函数介绍 1.迭代器的分类 我们的这个迭代器…...

【智能大数据分析 | 实验一】MapReduce实验:单词计数

【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈智能大数据分析 ⌋ ⌋ ⌋ 智能大数据分析是指利用先进的技术和算法对大规模数据进行深入分析和挖掘&#xff0c;以提取有价值的信息和洞察。它结合了大数据技术、人工智能&#xff08;AI&#xff09;、机器学习&#xff08;ML&a…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式&#xff1a;dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一&#xff0c;腐蚀跟膨胀属于反向操作&#xff0c;膨胀是把图像图像变大&#xff0c;而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...

【Go语言基础【12】】指针:声明、取地址、解引用

文章目录 零、概述&#xff1a;指针 vs. 引用&#xff08;类比其他语言&#xff09;一、指针基础概念二、指针声明与初始化三、指针操作符1. &&#xff1a;取地址&#xff08;拿到内存地址&#xff09;2. *&#xff1a;解引用&#xff08;拿到值&#xff09; 四、空指针&am…...

GO协程(Goroutine)问题总结

在使用Go语言来编写代码时&#xff0c;遇到的一些问题总结一下 [参考文档]&#xff1a;https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现&#xff1a; 今天在看到这个教程的时候&#xff0c;在自己的电…...

人工智能--安全大模型训练计划:基于Fine-tuning + LLM Agent

安全大模型训练计划&#xff1a;基于Fine-tuning LLM Agent 1. 构建高质量安全数据集 目标&#xff1a;为安全大模型创建高质量、去偏、符合伦理的训练数据集&#xff0c;涵盖安全相关任务&#xff08;如有害内容检测、隐私保护、道德推理等&#xff09;。 1.1 数据收集 描…...