python中的plt是什么意思_Matplotlib中的“plt”和“ax”到底是什么?
在幕布中绘图,还是在幕布上的单元格中绘图?
实际上,作为最流行和最基础的数据可视化库,Matplotlib在某些方面有些令人困惑,这些部分经常有人问起。我应该在什么时候使用“axes”
为什么有时用“plt”而有时用“ax”?
它们之间有什么区别?
在网上有这么多的例子向人们展示如何使用Matplotlib来绘制这种或那种图表,但我很少看到任何教程提到“为什么”。这可能会使编程经验较少或从其他语言(如R)切换到这种语言的人感到非常困惑。
在本文中,我不会教您使用Matplotlib绘制任何特定图表,但会尝试解释有关Matplotlib的基本但重要的内容——人们通常使用的“plt”和“ax”是什么。
概念
注意,当我说“plt”时,它并不存在于Matplotlib库中。它之所以被称为“plt”,是因为大多数Python程序员喜欢导入Matplotlib并创建一个名为“plt”的别名,我相信您应该知道这个别名。
import matplotlib.pyplot as plt
然后,回到我们的主题。为了演示,让我们画一个简单的图表。
import numpy as npplt.plot(np.random.rand(20))
plt.title('test title')
plt.show()
如上面标注的截图所示,当我们使用plt:将生成一个figure对象(以绿色显示)
Axes对象是通过绘制的折线图(红色显示)隐式生成的
图中的所有元素(如x和y轴)都在Axes对象中呈现(蓝色显示)
这也就表示:figure就像一张纸,你可以画任何你想画的东西
我们必须在“单元格”中绘制图表,在此处,Axes是坐标轴
如果我们只画一个图形,我们不需要先画一个“单元格”,只要在纸上画就可以了。我们可以使用plt.plot(…)
显式绘制“单元格”
当然,我们可以在“纸”上显式地绘制一个“单元格”,以告诉Matplotlib我们将在这个单元格中绘制一个图表。然后,我们有以下代码。
fig, ax = plt.subplots()
ax.plot(np.random.rand(20))
ax.set_title('test title')
plt.show()
结果完全一样。唯一的区别是我们明确地绘制了“单元格”,这样我们就能够得到Figure和Axes对象。
实际上,当我们只想绘制一个图形时,没有必要“绘制”单元格。但是,您必须注意到,当我们想在一个图中绘制多个图时,必须这样做。
n_rows = 2
n_cols = 2fig, axes = plt.subplots(n_rows, n_cols)
for row_num in range(n_rows):
for col_num in range(n_cols):
ax = axes[row_num][col_num]
ax.plot(np.random.rand(20))
ax.set_title(f'Plot ({row_num+1}, {col_num+1})')fig.suptitle('Main title')
fig.tight_layout()
plt.show()
在这个代码片段中,我们首先声明了要“绘制”的行和列的数量。2×2表示我们要画4个单元格。
然后,在每个单元格中,我们绘制一个随机的折线图,并根据其行号和列号分配一个标题。请注意,我们使用的是axis实例。
在此之后,我们在“paper”上定义一个“Main title”,即Figure实例。所以,我们有这个超级标题,它不属于任何“单元格”,但在幕布上。
最后,在调用show()方法之前,我们需要要求Figure实例通过调用它的tight_layout()方法自动在单元格之间提供足够的填充。
总结
希望现在你能更好地理解plt和ax到底是什么。
基本上,plt是matplotlib的一个常见别名。pyplot被大多数人使用。当我们使用plt(比如plt.line(…))绘制一些东西时,我们隐式地创建了一个图形实例和图形对象内部的坐标轴。当我们只想画一个图的时候,这是非常方便的。
但是,我们可以显式地调用plt .subplot()来获得Figure对象和Axes对象,以便对它们执行更多的操作。当我们想在一个图形上画多个子图时,通常需要使用这种方法。
另外,下面是用于Figure和Axes类的Matplotlib官方API引用。强烈建议大家自己去看看它们,并尝试一些方法,以确保自己理解得更深。
https://matplotlib.org/api/asgen/matplotlib.figure.Figure.html#matplotlib.figure.Figure
作者:Christopher Tao
deephub翻译组:孟翔杰
python中的plt是什么意思_Matplotlib中的“plt”和“ax”到底是什么?相关推荐
- python中plt改变图像尺寸_Matplotlib中图像大小设置
Matplotlib中图像大小设置 2019-10-15 23:53:30 来源: 晴天小雨 0 摘要:Matplotlib中figsize是设置图形大小的参数,接收一个元祖,内含两个元素,分别代表图 ...
- python中怎么绘制柱状簇_matplotlib中的簇状条形图?
这些例子没有处理不相等的条数,但您可以使用另一种方法.我给你举个例子.在 注意:我使用pandas来操作数据,如果你不知道,你应该试试看http://pandas.pydata.org/:import ...
- python中show函数的用法_matplotlib常见函数之plt.rcParams、matshow的使用(坐标轴设置)...
1.plt.rcParams plt(matplotlib.pyplot)使用rc配置文件来自定义图形的各种默认属性,称之为"rc配置"或"rc参数". 通过r ...
- python axes函数_matplotlib中的axes.flat做什么?
让我们看一个最小的例子,在这里我们用^{}创建一些轴,也可以看到this questionimport matplotlib.pyplot as plt fig, axes = plt.subplot ...
- python画波浪线_matplotlib中的锯齿形或波浪线
是的,但它有一点点后果.最简单的方法是在matplotlib中使用xkcd模式. import numpy as np import matplotlib.pyplot as plt plt.xkcd ...
- 用python画波浪线的句子_matplotlib中的锯齿线或波浪线
是的,但是会有一点影响.最简单的方法是在matplotlib中使用xkcd模式.在import numpy as np import matplotlib.pyplot as plt plt.xkcd ...
- 使用Python,OpenCV,K-Means聚类查找图像中最主要的颜色
Python,OpenCV,K-Means聚类查找图像中最主要的颜色 1. K-Means是什么? 2. 步骤 3. 效果图 4. 源代码 参考 对于肉眼来说,从一幅图中识别出主要颜色很容易.那怎么用 ...
- python中subplot是什么意思_python matplotlib中的subplot函数使用详解
python里面的matplotlib.pylot是大家比较常用的,功能也还不错的一个包.基本框架比较简单,但是做一个功能完善且比较好看整洁的图,免不了要网上查找一些函数.于是,为了节省时间,可以一劳 ...
- python数学公式代码导入_在Matplotlib图中插入LaTex公式实例
Matplotlib可以无缝的处理LaTex字体,在图中加入数学公式 from matplotlib.patches import Polygon import matplotlib.pyplot a ...
最新文章
- Python经典面试题100道(附PDF下载地址)
- 武大计算机学院推免清北,南大2020年推免生来自哪儿?山大73,武大41,清北5人...
- 九度题库(所有题目整理,适合计算机考研和面试的人用)
- 感知机数据算法的对偶形式
- H264 CAVLC 研究
- inur new.php id,Cmsez(随易)全站系统 0day
- Angular深入理解基本组成
- 艾蔻智能机器人怎么连接网络_艾蔻扫地机器人z3怎么用?
- Oracle用户权限分配的具体方法
- python答疑的作用_python课程答疑
- CCNA培训课总结笔记--静态路由实现负载均衡(四)
- SQL Server 创建索引(index)
- 离散数学 集合的运算
- 网卡驱动修改服务器,网卡驱动配置
- (信贷风控十五)评分卡分数切分、授信额度与利率定价
- mac charles代理设置
- FileSystemMonitor 文件系统监控工具
- VBS 请求WebAPI接口_C#进阶系列——WebApi 路由机制剖析:你准备好了吗?
- 小程序和html5开发的差异
- Android:从零开始打造自己的深度链接库(一):ARouter简介
热门文章
- 02-特征逆推图像实验
- 剧场版动画《巨虫列岛》1月上映决定!
- 来看看这位年轻的 eBay 小伙是如何成为 Committer
- 中石油:皇家棋神(思维)
- VolgaCTF2015之lcg的writeup
- Quidem repellendus similique reiciendis quas.ExTable blond sorte bcepturi voluptatibus ipsa aliquid.
- AlertDialog对话框的使用及示例
- HTML5 video/audio监听事件属性及方法
- matlab中对一个信号加指定信噪比的噪声
- 【AGM】《风色幻想:纷争—luca篇》总之这是一个没空填的坑