【matplotlib】figure与axes的关系

figure是绘制对象,一个figure对象可以包含多个Axes子图,一个Axes是一个绘图区域,不加设置时,Axes为1,且每次绘图其实都是在figure上的Axes上绘图。
接下来看怎么绘制多子图。
使用 plt.subplot(numRows, numCols, plotNum),参数分别代表行数,列数,以及编号,编号顺序为从左到右、从上到下,从1开始。如果这三个参数值都小于10,可以去掉逗号写。子图不能重叠,如果新创建的子图覆盖了前子图,前子图会被删除掉。
————————————————
版权声明:本文为CSDN博主「超级点不超」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zhang_diandian/article/details/79968832

"""
1. 建立两个figure,对第二个figure设置axes
2. 循环中在 figure 和 ax1,ax2上做图
3. plt.figure(1) 在figure1存在的时候,作为选取作用
4. plt.sca(ax1) 选取ax1,使用plt.sca()-select current axes
"""
plt.figure(1) 
plt.figure(2)
ax1 = plt.subplot(121)
ax2 = plt.subplot(122)

x = np.linspace(0,3,100)

for i in range(5):
    plt.figure(1)
    plt.plot(x, np.exp(i*x/3))
    plt.sca(ax1)
    plt.plot(x, np.sin(i*x))
    plt.sca(ax2)
    plt.plot(x, np.cos(i*x))
plt.show()

在这里插入图片描述
在这里插入图片描述

Matplotlib是一个Python的绘图库,用于制作各种类型的图表,包括线图、柱状图、散点图等。其figure、子图和axesMatplotlib的三个重要概念。 1. figure figureMatplotlib最顶层的容器,用于存放所有的绘图元素。它可以看作是整个图表的画布,可以设置图表的大小、分辨率和背景颜色等属性。 2. 子图 子图是指在同一个figure划分出来的不同区域,每个区域可以绘制不同的图表。子图可以通过subplot函数来创建,它接受三个参数,分别表示子图的行数、列数和编号。 例如,以下代码会创建一个2x2的子图,并分别在每个子图绘制一幅图表: ``` import matplotlib.pyplot as plt # 创建一个2x2的子图 fig, axs = plt.subplots(nrows=2, ncols=2) # 在第一个子图绘制一幅线图 axs[0, 0].plot([1, 2, 3, 4], [1, 4, 2, 3]) # 在第二个子图绘制一幅柱状图 axs[0, 1].bar(['A', 'B', 'C', 'D'], [10, 5, 20, 15]) # 在第三个子图绘制一幅散点图 axs[1, 0].scatter([1, 2, 3, 4], [1, 4, 2, 3]) # 在第四个子图绘制一幅饼图 axs[1, 1].pie([10, 5, 20, 15], labels=['A', 'B', 'C', 'D']) plt.show() ``` 3. axes axes是指子图的坐标系,它可以看作是子图的一个小画板,可以在上面绘制各种图表元素。每个子图都有一个默认的axes,可以通过gca函数来获取。 例如,在上面的代码,可以通过以下代码来获取第一个子图的axes: ``` ax = axs[0, 0].gca() ``` 需要注意的是,axes是可以重叠的,即在同一个子图可以添加多个axes。可以通过add_axes函数来添加一个新的axes。 例如,以下代码会在第一个子图添加一个新的axes,并在上面绘制一幅散点图: ``` ax = axs[0, 0].add_axes([0.1, 0.1, 0.8, 0.8]) ax.scatter([1, 2, 3, 4], [1, 4, 2, 3]) ``` 综上所述,figure、子图和axesMatplotlib的三个重要概念,它们分别代表整个图表的画布、划分出来的不同区域和子图的坐标系。每个概念都有其独特的作用和属性,可以根据需要进行灵活运用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值