Python库matplotlib之二
Python库matplotlib之二
- figure
- Axes
- subplot
figure
matplotlib.pyplot.figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=<class ‘matplotlib.figure.Figure’>, clear=False, **kwargs)
-
num,int 或 str 或 figure,是可选参数。是figure的唯一标识符。
如果具有该标识符的figure已存在,则该figure被激活,并返回。整数指的是Figure.number属性,字符串指的是figure标签。
如果没有给出带有标识符的figure或num,则会创建一个新figure,使其处于活动状态,并返回。如果 num 是 int,则它将用于Figure.number 属性,否则,将使用自动生成的整数值(从 1 开始,并针对每个新图形递增)。如果 num 是字符串,则figure标签和窗口标题将设置为此值。 -
figsize(float, float),默认值为rcParams[“figure.figsize”] (默认值:[6.4, 4.8])
宽度、高度(以英寸为单位)。 -
dpi,float,默认值为rcParams[“figure.dpi”](默认:100.0)
figure的分辨率,以每英寸点数为单位。 -
facecolor,颜色,默认值为rcParams[“figure.facecolor”](默认:‘white’)
背景颜色。 -
edgecolor,颜色,默认值为rcParams[“figure.edgecolor”](默认:‘white’)
边框颜色。 -
frameon,变量类型为bool,默认值为True。如果为 False,则禁止绘制figure框架。
-
FigureClass,figure的子类。可以选择使用自定义Figure 实例。
-
clear,变量类型是bool,默认值为False。如果True,并且该figure已存在,则将其清除。
-
strict_layout,变量类型是bool 或 dict,默认值:rcParams[“figure.autolayout”] (默认值:False)
如果为False,则使用 subplotpars。如果为 True,则使用带有默认填充的tight_layout 调整subplot参数。当提供包含关键字w_pad、h_pad 和 rect 的字典时,默认的ight_layout 填充将被盖写。 -
constrained_layout,变量类型是bool,默认值:rcParams[“figure.constrained_layout.use”](默认值:False)
如果为 True,则使用约束布局,调整plot元素的位置。与tight_layout类似,但设计得更加灵活。 -
**kwargs可选。
matplotlib.pyplot.figure 实现以下类:
- Figure,顶级Artist,拥有所有plot元素。许多方法都在FigureBase 中实现。
- SubFigure,在一个figure内的逻辑figure,通常使用Figure.add_subfigure 或Figure.subfigures 方法添加到figure。
- SubplotParams,控制subplots之间的默认间距。
是所有plot元素的顶级容器。
Figure实例通过callbacks属性支持回调,callbacks是一个CallbackRegistry 实例。可以连接的事件是“dpi_changed”,并且将使用 func(fig) 调用回调,其中Fig 是Figure 实例。
下面例子使用add_axes。
import matplotlib.pyplot as plt if __name__ == "__main__":left = 0.05bottom = 0.05width = 0.90height = 0.80rect = left, bottom, width, heightfig = plt.figure()fig.add_axes(rect)fig.add_axes(rect, frameon=True, facecolor='g')fig.add_axes(rect, polar=True)ax = fig.add_axes(rect, projection='polar')plt.show()

Axes
词法:matplotlib.pyplot.axes(arg=None, **kwargs)
-
arg,None 或 4 元组
该函数的确切行为取决于类型:
无:使用 subplot(**kwargs) 添加新的全窗口轴。
浮点数 4 元组 rect = [left, bottom, width, height]。使用当前figure上的 add_axes 添加一个新轴,其尺寸为标准化 (0, 1) 单位的矩形。 -
projection,{None, ‘aitoff’, ‘hammer’, ‘lambert’, ‘mollweide’, ‘polar’, ‘rectilinear’, str}, 是可选参数。
轴的投影类型。 str 是自定义投影的名称。默认值None会产生“直线”投影。 -
polar,变量类型是bool,默认值为False
如果为True,则等价于projection=‘polar’。 -
sharex、shareyAxes,可选
与 sharex 和/或 sharey 共享 x 或 y 轴。该轴将具有与共享轴相同的限制、刻度和比例。 -
label,变量类型是str。返回轴的标签。
一个Axes对象封装在一个图中的单个plot/sub-plot的所有元素。
它包含大部分plot/sub-plot的元素:Axis、Tick、Line2D、Text、Polygon 等,并设置坐标系。
与图形中的所有可见元素一样,Axes是Artist 子类。
Axes实例通过一个回调属性支持回调,回调是一个CallbackRegistry 实例。可以连接的事件是“xlim_changed”和“ylim_changed”,回调使用 func(ax) 调用回调函数,其中ax是 Axes 实例。
下面展示一些 内联代码片。
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.widgets import Buttonfreqs = np.arange(0.2, 2, 0.3)fig, ax = plt.subplots()
ax.set_ylabel('Frequency', color='#00ff00')
ax.set_xlabel('Time', color='#0000ff')
ax.set_facecolor('#eafff5')
plt.subplots_adjust(bottom=0.2)
t = np.arange(0.0, 10.0, 0.01)
s = np.sin(2*np.pi*freqs[0]*t)
l, = plt.plot(t, s, lw=2)class Index:ind = 0def reset(self, event):self.ind = 0i = self.ind % len(freqs)ydata = np.sin(2*np.pi*freqs[i]*t)l.set_ydata(ydata)l.set_color("#0000FF")plt.draw()def next(self, event):self.ind += 1i = self.ind % len(freqs)ydata = np.sin(2*np.pi*freqs[i]*t)l.set_ydata(ydata)l.set_color("#00FF00")plt.draw()def prev(self, event):self.ind -= 1i = self.ind % len(freqs)ydata = np.sin(2*np.pi*freqs[i]*t)l.set_ydata(ydata)l.set_color("#FF0000")plt.draw()if __name__ == "__main__":callback = Index()axprev = plt.axes([0.7, 0.05, 0.1, 0.075])axnext = plt.axes([0.81, 0.05, 0.1, 0.075])ax_reset = plt.axes([0.59, 0.05, 0.1, 0.075])bnext = Button(axnext, 'Next')bnext.on_clicked(callback.next)bprev = Button(axprev, 'Previous')bprev.on_clicked(callback.prev)b_reset = Button(ax_reset, 'Reset')b_reset.on_clicked(callback.reset)plt.show()

subplot
matplotlib.pyplot.subplot(*args, **kwargs)
将一个Axes添加到当前图形,或获取现有的轴。
import matplotlib.pyplot as pltdef plot_line():names = ['10-20', '21-40', '41-70']values = [15, 60, 25]plt.figure(figsize=(9, 3))plt.subplot(131)plt.bar(names, values)plt.subplot(132)plt.scatter(names, values)plt.subplot(133)plt.plot(names, values, 'g^')plt.suptitle('population statistics')plt.show()if __name__ == "__main__":plot_line()

相关文章:
Python库matplotlib之二
Python库matplotlib之二 figureAxessubplot figure matplotlib.pyplot.figure(numNone, figsizeNone, dpiNone, facecolorNone, edgecolorNone, frameonTrue, FigureClass<class ‘matplotlib.figure.Figure’>, clearFalse, **kwargs) num,int 或 str 或 fi…...
DAY17||654.最大二叉树 |617.合并二叉树 |700.二叉搜索树中的搜索 |
654.最大二叉树 题目:654. 最大二叉树 - 力扣(LeetCode) 给定一个不含重复元素的整数数组。一个以此数组构建的最大二叉树定义如下: 二叉树的根是数组中的最大元素。左子树是通过数组中最大值左边部分构造出的最大二叉树。右子树…...
读构建可扩展分布式系统:方法与实践16读后总结与感想兼导读
1. 基本信息 构建可扩展分布式系统:方法与实践 [美]伊恩戈顿(Ian Gorton)著 机械工业出版社,2024年5月出版 1.1. 读薄率 书籍总字数188千字,笔记总字数49688字。 读薄率49688188000≈26.4% 1.2. 读厚方向 设计模式:可复用面向对象软件的…...
Anaconda 安装
目录 - [简介](#简介) - [安装Anaconda](#安装anaconda) - [启动Anaconda Navigator](#启动anaconda-navigator) - [创建环境](#创建环境) - [管理包](#管理包) - [常用命令行操作](#常用命令行操作) - [Jupyter Notebook 快速入门](#jupyter-notebook-快速入门) - [结…...
优雅使用 MapStruct 进行类复制
前言 在项目中,常常会遇到从数据库读取数据后不能直接返回给前端展示的情况,因为还需要对字段进行加工,比如去除时间戳记录、隐藏敏感数据等。传统的处理方式是创建一个新类,然后编写大量的 get/set 方法进行赋值,若字…...
第19周JavaWeb编程实战-MyBatis实现OA系统 1-OA系统
办公OA系统项目开发 课程简介 本课程将通过慕课办公OA平台的开发,讲解实际项目开发中必须掌握的技能和设计技巧。课程分为三个主要阶段: 需求说明及环境准备: 基于RBAC的访问控制模块开发: 多级请假审批流程开发: …...
仿黑神话悟空跑动-脚下波纹特效(键盘wasd控制走动)
vue使用three.js实现仿黑神话悟空跑动-脚下波纹特效 玩家角色的正面始终朝向鼠标方向,且在按下 W 键时,玩家角色会朝着鼠标方向前进 空格建跳跃 <template><div ref"container" class"container" click"onClick"…...
`torch.utils.data`模块
在PyTorch中,torch.utils.data模块提供了许多有用的工具来处理和加载数据。以下是对您提到的DataLoader, Subset, BatchSampler, SubsetRandomSampler, 和 SequentialSampler的详细解释以及使用示例。 1. DataLoader DataLoader是PyTorch中用于加载数据的一个非常…...
深入理解 `strncat()` 函数:安全拼接字符串
目录: 前言一、 strncat() 函数的基本用法二、 示例代码三、 strncat() 与 strcat() 的区别四、 注意事项五、 实际应用场景总结 前言 在C语言中,字符串操作是编程中非常常见的需求。strncat() 函数是标准库中用于字符串拼接的一个重要函数,…...
OpenCV_自定义线性滤波(filter2D)应用详解
OpenCV filter2D将图像与内核进行卷积,将任意线性滤波器应用于图像。支持就地操作。当孔径部分位于图像之外时,该函数根据指定的边界模式插值异常像素值。 卷积核本质上是一个固定大小的系数数组,数组中的某个元素被作为锚点(一般…...
设计模式之装饰模式(Decorator)
前言 这个模式带给我们有关组合跟继承非常多的思考 定义 “单一职责” 模式。动态(组合)的给一个对象增加一些额外的职责。就增加功能而言,Decorator模式比生成子类(继承)更为灵活(消除重复代码 & 减少…...
大数据-146 Apache Kudu 安装运行 Dockerfile 模拟集群 启动测试
点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…...
React入门准备
React是什么 React是一个用于构建用户界面的JavaScript框架,用于构建“可预期的”和“声明式的”Web用户界面,特别适合于构建那些数据会随时间改变的大型应用的用户界面。 它起源于Facebook的内部项目,因为对市场上所有JavaScript MVC框架都…...
robomimic基础教程(四)——开源数据集
robomimic开源了大量数据集及仿真环境,数据集标准格式为HDF5 目录 一、基础要求 二、使用步骤 1. 下载数据集 2. 后处理 3. 训练 4. 查看训练结果 三、HDF5数据集结构与可视化 1. 数据集结构 (1)根级别(data 组 group&a…...
胤娲科技:AI界的超级充电宝——忆阻器如何让LLM告别电量焦虑
当AI遇上“记忆橡皮擦”,电量不再是问题! 嘿,朋友们,你们是否曾经因为手机电量不足而焦虑得像个无头苍蝇?想象一下,如果这种“电量焦虑”也蔓延到了AI界, 特别是那些聪明绝顶但“耗电如喝水”的…...
前端大模型入门:使用Transformers.js手搓纯网页版RAG(二)- qwen1.5-0.5B - 纯前端不调接口
书接上文,本文完了RAG的后半部分,在浏览器运行qwen1.5-0.5B实现了增强搜索全流程。但受限于浏览器和模型性能,仅适合于研究、离线和高隐私场景,但对前端小伙伴来说大模型也不是那么遥不可及了,附带全部代码,…...
K-means聚类分析对比
K-means聚类分析,不同K值聚类对比,该内容是关于K-means聚类分析的,主要探讨了不同K值对聚类结果的影响。K-means聚类是一种常见的数据分析方法,用于将数据集划分为K个不同的类别。在这个过程中,选择合适的K值是非常关键…...
tar命令:压缩、解压的好工具
一、命令简介 用途: tar 命令用于创建归档文件(tarball),以及从归档文件中提取文件。 标签: 文件管理,归档。 特点: 归档文件可以保留原始文件和目录的层次结构,通常使用 .tar …...
Mac电脑上最简单安装Python的方式
背景 最近换了一台新的 MacBook Air 电脑,所有的开发软件都没有了,需要重新配环境,而我现在最常用的开发程序就是Python。这篇文章记录一下我新Mac电脑安装Python的全过程,也给大家一些思路上的提醒。 以下是我新电脑的配置&…...
Linux基础命令cd详解
cd(change directory)命令是 Linux 中用于更改当前工作目录的基础命令。它没有很多复杂的参数,但它的使用非常频繁。以下是 cd 命令的详细说明及示例。 基本语法 cd [选项] [路径] 常用选项 -L : 使用逻辑路径(默认选项&…...
调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
深入理解JavaScript设计模式之单例模式
目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式(Singleton Pattern&#…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
自然语言处理——循环神经网络
自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM)…...
全志A40i android7.1 调试信息打印串口由uart0改为uart3
一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...
图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度
文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...
