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

Python学习笔记第六十天(Matplotlib Pyplot)

Python学习笔记第六十天

  • Matplotlib Pyplot
  • 后记

Matplotlib Pyplot

Pyplot 是 Matplotlib 的子库,提供了和 MATLAB 类似的绘图 API。

Pyplot 是常用的绘图模块,能很方便让用户绘制 2D 图表。

Pyplot 包含一系列绘图函数的相关函数,每个函数会对当前的图像进行一些修改,例如:给图像加上标记,生新的图像,在图像中产生新的绘图区域等等。

使用的时候,我们可以使用 import 导入 pyplot 库,并设置一个别名 plt:

import matplotlib.pyplot as plt

这样我们就可以使用 plt 来引用 Pyplot 包的方法。

以下是一些常用的 pyplot 函数:

  • plot():用于绘制线图和散点图
  • scatter():用于绘制散点图
  • bar():用于绘制垂直条形图和水平条形图
  • hist():用于绘制直方图
  • pie():用于绘制饼图
  • imshow():用于绘制图像
  • subplots():用于创建子图

除了这些基本的函数,pyplot 还提供了很多其他的函数,例如用于设置图表属性的函数、用于添加文本和注释的函数、用于保存图表到文件的函数等等。

以下实例,我们通过两个坐标 (0,0) 到 (1,50) 来绘制一条线:

# 实例 1
import matplotlib.pyplot as plt
import numpy as npxpoints = np.array([0, 1])
ypoints = np.array([0, 50])plt.plot(xpoints, ypoints)
plt.show()

上实例中我们使用了 Pyplot 的 plot() 函数, plot() 函数是绘制二维图形的最基本函数。

plot() 用于画图它可以绘制点和线,语法格式如下:

# 画单条线
plot([x], y, [fmt], *, data=None, **kwargs)
# 画多条线
plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)

参数说明:

  • x, y:点或线的节点,x 为 x 轴数据,y 为 y 轴数据,数据可以列表或数组。
  • fmt:可选,定义基本格式(如颜色、标记和线条样式)。
  • **kwargs:可选,用在二维平面图上,设置指定属性,如标签,线的宽度等。
plot(x, y)        # 创建 y 中数据与 x 中对应值的二维线图,使用默认样式
plot(x, y, 'bo')  # 创建 y 中数据与 x 中对应值的二维线图,使用蓝色实心圈绘制
plot(y)           # x 的值为 0..N-1
plot(y, 'r+')     # 使用红色 + 号

颜色字符:‘b’ 蓝色,‘m’ 洋红色,‘g’ 绿色,‘y’ 黄色,‘r’ 红色,‘k’ 黑色,‘w’ 白色,‘c’ 青绿色,‘#008000’ RGB 颜色符串。多条曲线不指定颜色时,会自动选择不同颜色。

线型参数:‘‐’ 实线,‘‐‐’ 破折线,‘‐.’ 点划线,‘:’ 虚线。

标记字符:‘.’ 点标记,‘,’ 像素标记(极小点),‘o’ 实心圈标记,‘v’ 倒三角标记,‘^’ 上三角标记,‘>’ 右三角标记,‘<’ 左三角标记…等等。

如果我们要绘制坐标 (0, 2) 到 (6, 8) 的线,我们就需要传递两个数组 [0, 6] 和 [2, 8] 给 plot 函数:

# 实例 2
import matplotlib.pyplot as plt
import numpy as npxpoints = np.array([0, 6])
ypoints = np.array([2, 8])plt.plot(xpoints, ypoints)
plt.show()

如果我们只想绘制两个坐标点,而不是一条线,可以使用 o 参数,表示一个实心圈的标记:

绘制坐标 (0, 2) 和 (6, 8) 的两个点

# 实例 3
import matplotlib.pyplot as plt
import numpy as npxpoints = np.array([0, 6])
ypoints = np.array([2, 8])plt.plot(xpoints, ypoints, 'o')
plt.show()

我们也可以绘制任意数量的点,只需确保两个轴上的点数相同即可。

绘制一条不规则线,坐标为 (1, 3) 、 (2, 8) 、(6, 1) 、(8, 10),对应的两个数组为:[1, 2, 6, 8] 与 [3, 8, 1, 10]。

# 实例 4
import matplotlib.pyplot as plt
import numpy as npxpoints = np.array([1, 2, 6, 8])
ypoints = np.array([3, 8, 1, 10])plt.plot(xpoints, ypoints)
plt.show()

如果我们不指定 x 轴上的点,则 x 会根据 y 的值来设置为 0, 1, 2, 3…N-1。

# 实例 5
import matplotlib.pyplot as plt
import numpy as npypoints = np.array([3, 10])plt.plot(ypoints)
plt.show()

从上图可以看出 x 的值默认设置为 [0, 1]。

再看一个有更多值的实例:

# 实例 6
import matplotlib.pyplot as plt
import numpy as npypoints = np.array([3, 8, 1, 10, 5, 7])plt.plot(ypoints)
plt.show()

从上图可以看出 x 的值默认设置为 [0, 1, 2, 3, 4, 5]。

以下实例我们绘制一个正弦和余弦图,在 plt.plot() 参数中包含两对 x,y 值,第一对是 x,y,这对应于正弦函数,第二对是 x,z,这对应于余弦函数。

# 实例 7
import matplotlib.pyplot as plt
import numpy as npx = np.arange(0,4*np.pi,0.1)   # start,stop,step
y = np.sin(x)
z = np.cos(x)
plt.plot(x,y,x,z)
plt.show()

后记

今天学习的是Python Matplotlib Pyplot学会了吗。 今天学习内容总结一下:

  1. Matplotlib Pyplot

相关文章:

Python学习笔记第六十天(Matplotlib Pyplot)

Python学习笔记第六十天 Matplotlib Pyplot后记 Matplotlib Pyplot Pyplot 是 Matplotlib 的子库&#xff0c;提供了和 MATLAB 类似的绘图 API。 Pyplot 是常用的绘图模块&#xff0c;能很方便让用户绘制 2D 图表。 Pyplot 包含一系列绘图函数的相关函数&#xff0c;每个函数…...

服务器自动备份、打包、传输脚本

备份脚本 #!/bin/bash #author cheng #备份服务器自动打包归档每天的备份文件 Path/backhistory Host$(hostname) Date$(date %F) Dest${Host}_${Date}#创建目录 mkdir -p ${Path}/${Dest}#打包文件到目录 cd / && \#结合autoback.sh脚本&#xff0c;它往那个地方备&a…...

Docker 的数据管理 网络通信

目录 1.管理容器数据的方式 数据卷 数据卷的容器 2.操作命令 3.Docker 镜像的创建 1.管理容器数据的方式 数据卷 可以独立于容器生命周期存储的机制 可提供持久化 数据共享 docker run -v /var/www:/data1 --name web1 -it centos:7 /bin/bash 数据卷的容器 用来提供持久化数…...

目标检测YOLO实战应用案例100讲-基于孤立森林算法的高光谱遥感图像异常目标检测

目录 前言 孤立森林算法的基本理论 2.1 引言 2.2 孤立森林算法的基本思想...

excel中两列数据生成折线图

WPS中excel的两列数据&#xff0c;第一列为x轴&#xff0c;第二列为y轴&#xff0c;生成折线图&#xff0c;并生成拟合函数。 1.选中两列数据&#xff0c;右击选择插入图表&#xff0c;选择XY&#xff08;散点图&#xff09;&#xff0c;生成散点折线图 2.选中图中散点&#x…...

JS加密的域名锁定功能,JShaman支持泛域名

JShaman的域名锁定功能&#xff0c;支持泛域名 JShaman的JS代码混淆加密中&#xff0c;有一项“域名锁定”功能。使用此功能后&#xff0c;代码运行时会检测浏览器地址中的域名信息&#xff0c;如是非指定域名&#xff0c;则不运行&#xff0c;以此防止自己网站的JS代码被复制…...

概率论与数理统计:第七章:参数估计 第八章:假设检验

文章目录 Ch7. 参数估计7.1 点估计1.矩估计2.最大似然估计(1)离散型(2)连续型 7.2 评价估计量优良性的标准(1)无偏性 (无偏估计)(2)有效性(3)一致性 7.3 区间估计1.置信区间、置信度2.求μ的置信区间 Ch8. 假设检验1.拒绝域α、接受域1-α、H₀原假设、H₁备择假设2.双边检验、…...

【Kubernetes】Kubernetes的监控工具Promethues

Prometheus 一、Prometheus 概念1. Prometheus 概述2. Prometheus 的监控数据3. Prometheus 的特点4. Prometheus 和 zabbix 区别5. Prometheus 的生态组件5.1 Prometheus server5.2 Client Library5.3 Exporters5.4 Service Discovery5.5 Alertmanager5.6 Pushgateway5.7 Graf…...

【linux】2 Linux编译器-gcc/g++和Linux调试器-gdb

文章目录 一、Linux编译器-gcc/g使用1.1 背景知识1.2 gcc如何完成1.3 函数库1.4 gcc选项 二、linux调试器-gdb使用2.1 背景2.2 开始使用 总结 ヾ(๑╹◡╹)&#xff89;" 人总要为过去的懒惰而付出代价ヾ(๑╹◡╹)&#xff89;" 一、Linux编译器-gcc/g使用 1.1 背景…...

【力扣每日一题】2023.8.17 切披萨的方案数

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 题目给我们一个二维数组来表示一个披萨&#xff0c;其中‘A’表示披萨上的苹果。 让我们切k-1刀&#xff0c;把披萨切成 k 份&#xff0…...

Linux调试器-gdb使用

1. 背景 程序的发布方式有两种&#xff0c; debug 模式和 release 模式 Linux gcc/g 出来的二进制程序&#xff0c;默认是 release 模式 要使用 gdb 调试&#xff0c;必须在源代码生成二进制程序的时候 , 加上 - g 选项 2. 开始使用 gdb binFile 退出&#xff1a; ct…...

linux安装mysql错误处理

linux下mysql的安装与使用 linux安装mysql可有三种方式&#xff1a; 1、yum安装 2、源码安装 3、glibc安装 安装wget yum install -y wget https://blog.csdn.net/darendu/article/details/89874564?utm_sourceapp Linux上error while loading shared libraries问题解决方法…...

Matlab绘制灰度直方图

直方图是根据灰图像绘制的&#xff0c;而不是彩色图像通。查看图像直方图时候&#xff0c;需要先确定图片是否为灰度图&#xff0c;使用MATLAB2019查看图片是否是灰度图片&#xff0c;在读取图片后在MATLAB界面的工作区会显示读取的图像矩阵&#xff0c;如果是&#xff0c;那么…...

http学习笔记1

图解HTTP学习笔记 1.2 HTTP的诞生 CERN&#xff08;欧洲核子研究组织&#xff09;的蒂姆 • 伯纳斯 - 李&#xff08;Tim BernersLee&#xff09;博士提出了一种能让远隔两地的研究者们共享知识的设想。最初设想的基本理念是&#xff1a;借助多文档之间相互关联形成的超文本&am…...

PDF文件分割合并

PDF文件的分割和合并代码。 from PyPDF2 import PdfFileReader,PdfFileWriterdef pdf_split(filename,outputname)pr PdfFileReader(filename)for page in range(p.getNumPages()):pw PdfFileWriter()pw.addPage(pr.getPage(page))with open(f{outputname}{page}.pdf,wb) as…...

物联网无线通信方式总结

本文主要内容(一些物联网无线通信方式) 本文将介绍一些物联网无线通信方式的技术特点、底层调制方式和主要应用场景物联网无线通信方式是指利用无线技术实现物体之间的信息交换和网络连接的方式物联网无线通信方式的选择需要考虑多种因素&#xff0c;如传输距离、功耗、数据速…...

计算机竞赛 python的搜索引擎系统设计与实现

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; python的搜索引擎系统设计与实现 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;3分工作量&#xff1a;5分创新点&#xff1a;3分 该项目较为新颖&#xff…...

ue5 场景搭建和灯光照明参考

https://www.youtube.com/watch?vOCgn40aWVuU https://www.youtube.com/watch?vIGLujClhL5U...

Mycat跨分片Join指南

前言Mycat目前版本支持跨分片的join,主要实现的方式有四种。 全局表 ER分片 HBT ShareJoin ShareJoin在开发版中支持,前面三种方式1.3.0.1支持 2.ShareJoin ShareJoin是一个简单的跨分片Join,基于HBT的方式实现。 目前支持2个表的join,原理就是解析SQL语句,拆分成单表的…...

网络:RIP协议

1. RIP协议原理介绍 RIP是一种比较简单的内部网关协议&#xff08;IGP协议&#xff09;&#xff0c;RIP基于距离矢量的贝尔曼-福特算法(Bellman - Ford)来计算到达目的网络的最佳路径。最初的RIP协议开发时间较早&#xff0c;所以在带宽、配置和管理方面的要求也较低。 路由器运…...

中小项目如何通过按token计费模式灵活启动AI功能

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 中小项目如何通过按token计费模式灵活启动AI功能 对于预算有限的中小项目团队而言&#xff0c;在探索产品方向、验证市场需求的早期…...

常见的 17 种 RAG 方案解析

近年来&#xff0c;随着大语言模型&#xff08;LLM&#xff09;的广泛应用&#xff0c;检索增强生成&#xff08;Retrieval-Augmented Generation&#xff0c;RAG&#xff09;系统逐渐成为连接私有知识库与智能问答的核心架构。RAG 不仅弥补了大模型在实时性与事实性上的不足&a…...

基于RAG与MCP协议构建实时新闻AI助手:newsmcp项目实战解析

1. 项目概述&#xff1a;一个让AI“读新闻”的智能工具最近在折腾AI应用开发的朋友&#xff0c;可能都绕不开一个核心问题&#xff1a;如何让大语言模型&#xff08;LLM&#xff09;获取并理解最新的、模型训练数据之外的信息&#xff1f;比如&#xff0c;你想让ChatGPT帮你分析…...

快速排序:核心知识点全解析

一、快速排序 核心所有知识点1. 核心思想分治 挖坑 / 左右双指针 基准值 pivot选一个基准值 pivot把数组划分成&#xff1a;左边 ≤ pivot&#xff0c;右边 ≥ pivot递归对左、右子区间重复划分区间长度为 1 时终止&#xff0c;整体有序2. 时间复杂度平均&#xff1a;\(O(n\l…...

3步解决Dell G15散热难题:TCC-G15开源散热控制工具完全指南

3步解决Dell G15散热难题&#xff1a;TCC-G15开源散热控制工具完全指南 【免费下载链接】tcc-g15 Thermal Control Center for Dell G15 - open source alternative to AWCC 项目地址: https://gitcode.com/gh_mirrors/tc/tcc-g15 你是否正在为Dell G15笔记本的过热问题…...

AI驱动音乐合成:JUCE与LibTorch实时音频插件开发全解析

1. 项目概述&#xff1a;当AI遇见音乐合成 如果你和我一样&#xff0c;既是个音乐制作爱好者&#xff0c;又对前沿技术充满好奇&#xff0c;那么最近在GitHub上出现的 martinic/DrMixAISynth 项目&#xff0c;绝对值得你花上一个周末的时间好好研究一番。这个项目&#xff0c…...

手把手复现:在MATLAB/Simulink里搭建PMSM的两种解耦模型(附模型下载)

在MATLAB/Simulink中构建永磁同步电机解耦控制模型的实战指南 永磁同步电机&#xff08;PMSM&#xff09;因其高效率和高功率密度&#xff0c;已成为工业驱动和电动汽车领域的核心部件。但对于刚接触电机控制的工程师和学生来说&#xff0c;如何将教科书中的解耦控制理论转化为…...

基于Next.js与Prisma构建宠物社区应用:全栈开发实战解析

1. 项目概述&#xff1a;一个为宠物爱好者打造的社区应用最近在GitHub上闲逛&#xff0c;发现了一个挺有意思的开源项目&#xff0c;叫jtsang4/happypaw。光看名字&#xff0c;“Happy Paw”&#xff08;快乐的爪子&#xff09;&#xff0c;就能猜到这八成是和宠物相关的。点进…...

城市道路自动驾驶避障规划与MPC跟踪控制【附仿真】

✨ 长期致力于自动驾驶、路径规划、速度规划、跟踪控制、模型预测控制研究工作&#xff0c;擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅如需沟通交流&#xff0c;点击《获取方式》 &#xff08;1&#xff09;SL图五次多项式代价路径决策与凸…...

从阿里天池金融风控赛看实战:用XGBoost搞定贷款违约预测的完整流程与避坑指南

金融风控实战&#xff1a;XGBoost在贷款违约预测中的全流程解析 金融风控领域的机器学习应用正变得越来越普及&#xff0c;尤其是在贷款违约预测这一核心场景中。天池等数据竞赛平台为从业者提供了宝贵的实战演练机会&#xff0c;但如何将比赛经验转化为真实业务能力&#xff0…...