【Python_Matplotlib学习笔记(一)】pyplot模块的基本用法

news2024/11/20 7:07:36

pyplot模块的基本用法

前言

Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形(来自:百度百科)。pyplot 模块是 Matplotlib 模块提供的快速绘图模块,它模仿了 MATLAB 的部分功能。在本文中主要介绍 pyplot 模块的基本用法,会进行持续的更新,欢迎各位读者朋友点赞收藏。

正文

1、导入pyplot模块

import matplotlib.pyplot as plt # 导入pyplot模块

2、plt.plot()方法绘制图像

  1. 传入一个参数绘制图像

    import matplotlib.pyplot as plt
    
    plt.plot([1, 3, 4, 6]) # 如果只传入一个数组作为参数, matplotlib 认为是 Y 轴的坐标
    plt.show()
    

    在这里插入图片描述
    注意:

    1. 如果只传入一个数组作为参数, Matplotlib 认为是 Y 轴的坐标并自动生成 x 值。 由于 Python 范围从 0 开始,默认 x 向量具有与 y 相同的长度,但从 0 开始。因此 x 数据是 [0,1,2,3]。
    2. plt.show() 函数:默认情况下,matplotlib.pyplot 不会直接显示图像,只有调用 plt.show() 函数时,图像才会显示出来,类似 print() 函数。plt.show() 默认是在新窗口打开一幅图像,并且提供了对图像进行操作的按钮。
  2. 传入两个参数绘制图像

    import matplotlib.pyplot as plt
    
    plt.plot([1, 3, 4, 6], [2, 5, 10, 12])
    plt.show()
    

    在这里插入图片描述

  3. plt.plot() 参数设置

    1. 设置线条颜色color = ' 'c = ' '

      import matplotlib.pyplot as plt
      
      plt.plot([1, 3, 4, 6], [2, 5, 10, 12],c='black') # 设置线条颜色为黑色
      plt.show()
      

      在这里插入图片描述
      Matplotlib 支持的颜色缩写:

      字符字符
      ‘b’蓝色
      ‘c’青色
      ‘k’黑色
      ‘g’绿色
      ‘m’洋红
      ‘w’白色
      ‘r’红色
      ‘y’黄色
    2. 设置线条风格linestyle = ' 'ls = ' '

      import matplotlib.pyplot as plt
      
      plt.plot([1, 3, 4, 6], [2, 5, 10, 12],ls='--') # 设置线条风格为虚线
      plt.show()
      

      在这里插入图片描述

      Matplotlib 支持的控制线条样式格式字符串:

      字符描述字符描述
      ‘-’实线‘–’虚线
      ‘-.’点划线‘:’点虚线
      ‘.’‘,’像素
      ‘o’圆圈‘v’下三角
      ‘^’上三角‘<’左三角
      ‘>’右三角‘1’ 1加下三角
      ‘2’1加上三角‘3’ 1加左三角
      ‘4’1加右三角‘s’正方形
      ‘p’五边形‘*’星形
      ‘h’六角形1‘H’六角形2
      ‘+’加号‘x’乘号
      ‘D’钻石‘d’菱形
    3. 设置线条宽度linewidth= ' 'lw= ' '

      import matplotlib.pyplot as plt
      
      plt.plot([1, 3, 4, 6], [2, 5, 10, 12],lw=3) # 设置线条宽度为3
      plt.show()
      

      在这里插入图片描述

    4. 设置线条透明度alpha=0.5 0-1范围内的浮点数

      import matplotlib.pyplot as plt
      
      plt.plot([1, 3, 4, 6], [2, 5, 10, 12],alpha=0.2) # 设置线条透明度为0.2
      plt.show()
      

      在这里插入图片描述

3、plt.plot()方法添加描述信息

  1. 添加图片标题plt.title("")

  2. 添加轴标签plt.xlabel('') & plt.ylabel('')

  3. 设置显示中文字符:Matplotlib 的缺省字体不支持中文,所以要指定一个支持中文的字体 plt.rcParams['font.sans-serif']=['Microsoft Yahei'] # 设定字体为微软雅黑

    属性值说明
    SimHei中文黑体
    Kaiti中文楷体
    Lisu中文隶书
    FangSong中文仿宋
    YouYuan中文幼圆
    STSong华文宋体
    import matplotlib.pyplot as plt
    
    plt.title("折线图")  # 设定图片标题
    plt.ylabel('Y轴')  # 设置Y轴标签
    plt.xlabel('Time')  # 设置X轴标签
    
    plt.rcParams['font.sans-serif'] = ['Microsoft Yahei'] # 设定字体为微软雅黑
    plt.plot([1, 3, 4, 6], [2, 5, 10, 12], alpha=1)
    plt.show()
    

    在这里插入图片描述
    如果不设置中文字符
    在这里插入图片描述
    运行时也会有 Warning 提示:UserWarning: Glyph 36724 (\N{CJK UNIFIED IDEOGRAPH-8F74}) missing from current font.

4、plt.lim()方法设置坐标轴取值范围

  1. 设置横坐标轴取值范围plt.xlim(xmin=1, xmax=10)

  2. 设置纵坐标轴取值范围plt.ylim(ymin=2, ymax=15)

    import matplotlib.pyplot as plt
    
    plt.title("折线图")  # 设定字体为微软雅黑
    plt.ylabel('Y轴')  # 设置Y轴标签
    plt.xlabel('Time')  # 设置X轴标签
    plt.xlim(xmin=1, xmax=10)
    plt.ylim(ymin=2, ymax=15)
    plt.rcParams['font.sans-serif'] = ['Microsoft Yahei']
    plt.plot([1, 3, 4, 6], [2, 5, 10, 12], alpha=1)
    plt.show()
    

    在这里插入图片描述

5、plt.ticks()方法设置坐标轴刻度范围

  1. 设置横坐标轴刻度范围plt.xticks(ticks, labels, rotation=90, fontsize=12)
  2. 设置纵坐标轴刻度范围plt.yticks(ticks, labels, rotation=90, fontsize=12)
    参数介绍
    1. ticks 是一个 list,对应的是轴刻度,可以是小数可以是整数,ticks 不指定的位置不显示刻度;
    2. labels 是一个 list,长度和 ticks 相等,内容是想要在对应刻度显示的内容;
    3. rotation 是刻度内容旋转角度;
    4. fontsize 设置刻度值的字体大小。
    import matplotlib.pyplot as plt
    
    plt.title("折线图")  # 设定字体为微软雅黑
    plt.ylabel('Y轴')  # 设置Y轴标签
    plt.xlabel('Time')  # 设置X轴标签
    plt.xlim(xmin=1, xmax=10)
    plt.ylim(ymin=2, ymax=15)
    plt.rcParams['font.sans-serif'] = ['Microsoft Yahei'] # 设置显示中文字体
    plt.xticks(list(range(1, 15,2)),rotation=0, fontsize=12)  # 调整刻度范围和刻度标签
    plt.plot([1, 3, 4, 6], [2, 5, 10, 12], alpha=1)
    plt.show()
    
    在这里插入图片描述

6、plt.grid()方法绘制网格线

绘制网格线:plt.grid(alpha=0.4),可以指定网格线的透明度。

import matplotlib.pyplot as plt

plt.title("折线图")  # 设定字体为微软雅黑
plt.ylabel('Y轴')  # 设置Y轴标签
plt.xlabel('Time')  # 设置X轴标签
plt.xlim(xmin=1, xmax=10)  # 设置x轴范围
plt.ylim(ymin=2, ymax=15)  # 设置y轴范围
plt.rcParams['font.sans-serif'] = ['Microsoft Yahei']
plt.xticks(list(range(1, 15, 2)), rotation=0, fontsize=12)  # 调整x轴刻度范围
plt.plot([1, 3, 4, 6], [2, 5, 10, 12], alpha=1)
plt.grid(alpha=0.4)  # 绘制网格,透明度为0.4
plt.show()

在这里插入图片描述

7、plt.axhline()方法绘制平行于 坐标轴的水平参考线

绘制平行于 x 轴的水平参考线axhline()plt.axhline(y, c, ls, lw, label)
绘制平行于 y 轴的水平参考线axvline()plt.axvline(x, c, ls, lw, label)
参数介绍

  1. x&y:x&y轴的坐标;
  2. c:参考线的颜色;
  3. ls:参考线的风格;
  4. lw:参考线的宽度;
  5. label:参考线的名称。
import matplotlib.pyplot as plt

plt.title("折线图")  # 设定字体为微软雅黑
plt.ylabel('Y轴')  # 设置Y轴标签
plt.xlabel('Time')  # 设置X轴标签
plt.xlim(xmin=1, xmax=10)  # 设置x轴范围
plt.ylim(ymin=2, ymax=15)  # 设置y轴范围
plt.rcParams['font.sans-serif'] = ['Microsoft Yahei']
plt.xticks(list(range(1, 15, 2)), rotation=0, fontsize=12)  # 调整x轴刻度范围
plt.plot([1, 3, 4, 6], [2, 5, 10, 12], alpha=1)
plt.grid(alpha=0.4)  # 绘制网格,透明度为0.4
plt.axhline(5, color='green', lw=2, label="分割线")  # 绘制平行于x轴的水平参考线,绿色,名称为分割线
plt.show()

在这里插入图片描述

8、plt.axvspan()方法绘制垂直于坐标轴的参考区域

绘制垂直于 x 轴的参考区域plt.axvspan( xmin, xmax ,facecolor, alpha)
绘制垂直于 y 轴的参考区域plt.axhspan( ymin, ymax ,facecolor, alpha)
参数介绍

  1. xmin&ymin:参考区域的起始位置;
  2. xmax&ymax:参考区域的终止位置;
  3. facecolor:参考区域的填充颜色;
  4. alpha:参考区域填充颜色的透明度,[0~1]。
import matplotlib.pyplot as plt

plt.title("折线图")  # 设定字体为微软雅黑
plt.ylabel('Y轴')  # 设置Y轴标签
plt.xlabel('Time')  # 设置X轴标签
plt.xlim(xmin=1, xmax=10)  # 设置x轴范围
plt.ylim(ymin=2, ymax=15)  # 设置y轴范围
plt.rcParams['font.sans-serif'] = ['Microsoft Yahei']
plt.xticks(list(range(1, 15, 2)), rotation=0, fontsize=12)  # 调整x轴刻度范围
plt.plot([1, 3, 4, 6], [2, 5, 10, 12], alpha=1)
plt.grid(alpha=0.4)  # 绘制网格,透明度为0.4
plt.axhline(5, color='green', lw=2, label="分割线")  # 绘制平行于x轴的水平参考线,绿色,名称为分割线
plt.axvspan(xmin=2,xmax=5,facecolor='r',alpha=0.2)  # 绘制垂直于x轴的参考区域
plt.show()

在这里插入图片描述

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

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

相关文章

H12-831最新解析25题

401、(判断)isis silent命令用来配置IS-IS接口为抑制状态&#xff0c;即抑制该接口接收和发送IS-IS报文&#xff0c;但此接口所在网段的路由可以被发布出去。 A.TRUE B.FALSE 答案&#xff1a;A 解析&#xff1a;isis silent命令为设置静默接口&#xff0c;配置了之后该接口…

5.1、阻塞/非阻塞、同步/异步(网络IO)

5.1、阻塞/非阻塞、同步/异步&#xff08;网络IO&#xff09; 1.阻塞/非阻塞、同步/异步(网络IO)①典型的一次IO的两个阶段是什么&#xff1f; 2.日志系统①基础知识②整体概述③本文内容④单例模式1.经典的线程安全懒汉模式2.局部静态变量之线程安全懒汉模式 ⑤饿汉模式⑥条件…

Tomcat 部署与优化

1. Tomcat概述 Tomcat是Java语言开发的&#xff0c;Tomcat服务器是一个免费的开放源代码的Web应用服务器&#xff0c;是Apache软件基金会的Jakarta项目中的一个核心项目&#xff0c;由Apache、Sun和其他一些公司及个人 共同开发而成。Tomcat属于轻量级应用服务器&#xff0c;在…

电商系统架构设计系列(一):电商系统到底是如何设计出来的?

引言 电商这个业务&#xff0c;和我们的生活息息相关。你可能对电商多少有一些了解&#xff0c;但是&#xff0c;即使是一个最小化的电商系统&#xff0c;它仍然非常复杂。在这个系列的文章里&#xff0c;我们将一起以一个创业公司的 CTO 的视角&#xff0c;来设计一个最小化的…

深度学习实战26-(Pytorch)搭建TextCNN实现多标签文本分类的任务

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下深度学习实战26-(Pytorch)搭建TextCNN实现多标签文本分类的任务&#xff0c;TextCNN是一种用于文本分类的深度学习模型&#xff0c;它基于卷积神经网络(Convolutional Neural Networks, CNN)实现。TextCNN的主要思想…

C语言实现链表--数据结构

魔王的介绍&#xff1a;&#x1f636;‍&#x1f32b;️一名双非本科大一小白。魔王的目标&#xff1a;&#x1f92f;努力赶上周围卷王的脚步。魔王的主页&#xff1a;&#x1f525;&#x1f525;&#x1f525;大魔王.&#x1f525;&#x1f525;&#x1f525; ❤️‍&#x1…

gateway整合knife4j(微服务在线文档)

文章目录 knife4j 微服务整合一、微服务与单体项目文档整合的区别二、开始整合1. 搭建一个父子maven模块的微服务,并引入gateway2.开始整合文档 总结 knife4j 微服务整合 由于单个服务的knife4j 整合之前已经写过了,那么由于效果比较好,然后微服务的项目中也想引入,所以开始微…

【Linux】多线程的互斥与同步

目录 一、线程冲突 二、重入与线程安全 1、线程不安全的情况 2、线程安全的情况 3、不可重入的情况 4、可重入的情况 5、可重入和线程安全的联系 6、STL是否线程安全 7、智能指针是否线程安全 三、互斥锁 1、互斥锁的使用 2、基于RAII风格的互斥锁的封装 2.1Mutex…

ChatGPT-4回答电子电路相关问题,感觉它有思想,有灵魂,一起看看聊天记录

前几天发了一篇文章&#xff0c;讲了我们平常摸电脑或者其它电器设备的时候&#xff0c;会有酥酥麻麻的感觉&#xff0c;这个并不是静电&#xff0c;而是Y电容通过金属壳泄放高频扰动&#xff0c;我们手摸金属壳的时候&#xff0c;就给Y电容提供了一个泄放回路&#xff0c;所以…

全网抓包天花板教程,CSDN讲的最详细的Fiddler抓包教程。2小时包你学会

目录 前言 一、安装 Fiddler 二、打开 Fiddler 并设置代理 三、抓取 HTTP/HTTPS 流量 四、流量分析和调试 五、应用场景 六、注意事项 七、实际案例 八、拓展阅读 九、结论 前言 Fiddler 是一款功能强大的网络调试工具&#xff0c;可以用于捕获和分析 HTTP 和 HTTPS …

生物信息学有哪些SCI期刊推荐? - 易智编译EaseEditing

以下是几个生物信息学领域的SCI期刊推荐&#xff1a; Bioinformatics&#xff1a; 该期刊是生物信息学领域最具影响力的SCI期刊之一&#xff0c;涵盖了生物信息学、计算生物学、系统生物学、生物医学工程等多个研究方向。 BMC Bioinformatics&#xff1a; 该期刊是生物信息学…

数据结构入门(C语言版)二叉树链式结构的实现

二叉树链式结构的实现 二叉树的概念及结构创建1、概念2、结构创建2、创建结点函数3、建树函数 二叉树的遍历1、前序遍历2、中序遍历3、后序遍历4、层序遍历 二叉树的销毁结语 二叉树的概念及结构创建 1、概念 简单回顾一下二叉树的概念&#xff1a; ★ 空树 ★非空&#xff1…

intellij 从2020升级到2023 踩坑实录

1.下载新版本intellij 工作机器上的intellij版本为2020社区版&#xff0c;版本比较老旧&#xff0c;需要进行升级。IDE这种提高生产力的工具&#xff0c;还是蛮重要的&#xff0c;也是值得稍微多花点时间研究一下的。升级之前就预计到了不会是那么简单&#xff0c;后面事实也证…

大型体检管理系统源码,Vs2012,C/S架构

体检管理系统源码&#xff0c;PEIS源码 一套专业的体检管理系统源码&#xff0c;核心功能有体检档案的录入、体检报告的输出、体检档案的统计查询和对比分析。该系统的使用&#xff0c;可以大大提高体检档案管理人员的工作效率&#xff0c;使体检档案的管理更加准确、全面、完…

以人为本的重点是有效网络安全计划的关键

安全和风险管理 (SRM) 领导者在根据九大行业趋势创建和实施网络安全计划时&#xff0c;必须重新考虑他们在技术和以人为本的元素之间的投资平衡。 以人为本的网络安全方法对于减少安全故障至关重要。 在控制设计和实施以及通过业务沟通和网络安全人才管理中关注人&#xff…

Python中的异常——概述和基本语法

Python中的异常——概述和基本语法 摘要&#xff1a;Python中的异常是指在程序运行时发生的错误情况&#xff0c;包括但不限于除数为0、访问未定义变量、数据类型错误等。异常处理机制是Python提供的一种解决这些错误的方法&#xff0c;我们可以使用try/except语句来捕获异常并…

基于linux:MySql-5.7二进制安装部署

基于linux&#xff1a;MySql-5.7二进制安装 1&#xff09;检查当前系统是否安装过Mysql [ ~]$ rpm -qa|grep mariadb mariadb-libs-5.5.56-2.el7.x86_64 //如果存在通过如下命令卸载 [ ~]$ sudo rpm -e --nodeps mariadb-libs //用此命令卸载mariadb2&#xff09;解压MySQ…

限流算法浅析

前言 在前文接口请求安全措施中&#xff0c;简单提到过接口限流&#xff0c;那里是通过Guava工具类的RateLimiter实现的&#xff0c;它实际上是令牌桶限流的具体实现&#xff0c;那么下面分别介绍几种限流算法&#xff0c;做一个更详细的了解。 固定窗口限流 1、核心思想 在…

基于 Flink CDC 的现代数据栈实践

摘要&#xff1a;本文整理自阿里云技术专家&#xff0c;Apache Flink PMC Member & Committer, Flink CDC Maintainer 徐榜江和阿里云高级研发工程师&#xff0c;Apache Flink Contributor & Flink CDC Maintainer 阮航&#xff0c;在 Flink Forward Asia 2022 数据集成…

初识C语言————4

文章目录 常见关键字 1、 关键字 typedef 2、关键字static define 定义常量和宏 指针 结构体 前言 这是博主初识C语言系列的最后一篇&#xff0c;之后博主会更新更详细的关于C语言学习的知识。希望各位老铁多多支持。 一、常见关键字 1、 关键字 typedef typedef 顾名思义是…