机器学习之numpy和matplotlib学习(五)

本文介绍如何利用matplotlib的subplot2grid方法创建3*3的子图布局,详细解析函数用法,并通过实例说明子图起始位置坐标规则。鼓励读者通过调整参数自行实践。
摘要由CSDN通过智能技术生成

今天我们来学习在一个figure画子图的第二个方法。
主要学习函数plt.subplot2grid()。
plt.subplot2grid()函数也是用来画一个子图的,与昨天讲的plt.subplot()函数类似。

 plt.subplot2grid()共有四个参数
 参数解释:例如plt.subplot2grid((3,3),(0,0),rowspan=1,colspan=3,)
 (3,3)是把一个figure分成3x3的表格布局。
(0,0)是第一个子图的开始位置【这个开始位置是以子图左上角的坐标为标准】
 rowspan是表示这个子图占几行,这里是1行。
 colspan是表示这个子图占几列,这里是三列。

本次教学是话一个3*3的网络布局表格的子图。
代码如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author  : SundayCoder-俊勇
# @File    : figure5.py
import matplotlib.pyplot as plt
import numpy as np

plt.figure()
x=np.linspace(-5,5,50)
y=2*x+1
# plt.subplot2grid()函数也是用来画一个子图的,与昨天讲的plt.subplot()函数类似。
# plt.subplot2grid()共有四个参数
# 参数解释:例如plt.subplot2grid((3,3),(0,0),rowspan=1,colspan=3,)
# (3,3)是把一个figure分成3x3的表格布局。
# (0,0)是第一个子图的开始位置【这个开始位置是以子图左上角的坐标为标准】
# rowspan是表示这个子图占几行,这里是1行。
# colspan是表示这个子图占几列,这里是三列。

#这里plt.subplot2grid()返回第一个子图图像,我们设置为pc1,代表子图picture1.
#这里区别于plt.subplot()函数,它是直接使用plt.plot()来绘制的,这里是使用pc1来绘制的。

pc1=plt.subplot2grid((3,3),(0,0),rowspan=1,colspan=3,)
pc1.plot(x,y);


pc2=plt.subplot2grid((3,3),(1,1),rowspan=1,colspan=2,)
pc2.plot(x,y);


pc3=plt.subplot2grid((3,3),(2,2),rowspan=1,colspan=1,)
pc3.plot(x,y);
#这个函数的作用明天讲,不用管它,有和没有都可以。
plt.tight_layout()

plt.show()

运行结果如下:
这里写图片描述

对于本次实验结果解释:
创建的一个3*3的表格布局如下:
这里写图片描述

对于子图开始位置,之前也强调过是以子图左上角的坐标为标准。所以子图起点位置的x和y最大只能为2【不清楚的结合下列图片一起看】
图画解释如下:
这里写图片描述

自己动手实践改变一下plt.subplot2grid( )函数的参数!!! 如:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author  : SundayCoder-俊勇
# @File    : figure5.py
import matplotlib.pyplot as plt
import numpy as np

plt.figure()
x=np.linspace(-5,5,50)
y=2*x+1

pc1=plt.subplot2grid((3,3),(0,0),rowspan=1,colspan=3,)
pc1.plot(x,y);


pc2=plt.subplot2grid((3,3),(1,0),rowspan=1,colspan=1,)
pc2.plot(x,y);


pc3=plt.subplot2grid((3,3),(2,0),rowspan=1,colspan=2,)
pc3.plot(x,y);
plt.tight_layout()
plt.show()

运行结果可是不一样了:
这里写图片描述

更新完毕
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值