Python中使用subplots绘画子图

知识储备

需要用到的库: numpy, matplotlib

numpy中:
np.linespace(start, end, sum):根据起止数据等间距地生成数组。例如,np.linespace(1, 50, 100) 这里是 1~50, 生成100个数据。

matplotlib中:
对subplots的使用:
fig, axes = plt.subplots(rows, cols, figsize = (14, 12))
fig代表绘图窗口(figure),axes代表这个绘图窗口上的坐标系(axes)。
rows是子图的行数,cols是子图的列数。
figsize可以来设置子图的宽度和高度。


例,创建四个子图,四个图的函数分别是y = sin(x),y = cos(x), y = sin(cos(x)), y = cos(sin(x))。
import math
import numpy as np
import matplotlib.pyplot as plt
#正常显示画图时出现的中文和负号
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

rows, cols = 2, 2
fig, axes = plt.subplots(rows, cols, figsize = (14, 12))
x = np.linspace(-2*math.pi, 2*math.pi, 100)
y = np.sin(x)
#设置子图的横纵坐标轴名称和子图的名称。
axes[0, 0].plot(x, y)
axes[0, 0].set_ylabel('y')
axes[0, 0].set_xlabel('x')
axes[0, 0].set_title('y = sin(x)')

y = np.cos(x)
axes[0, 1].plot(x, y)
axes[0, 1].set_ylabel('y')
axes[0, 1].set_xlabel('x')
axes[0, 1].set_title('y = cos(x)')

y = np.sin(np.cos(x))
axes[1, 0].plot(x, y)
axes[1, 0].set_ylabel('y')
axes[1, 0].set_xlabel('x')
axes[1, 0].set_title('y = sin(cos(x))')

y = np.cos(np.sin(x))
axes[1, 1].plot(x, y)
axes[1, 1].set_ylabel('y')
axes[1, 1].set_xlabel('x')
axes[1, 1].set_title('y = cos(sin(x))')

plt.show()

结果如下:

在这里插入图片描述

  • 12
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值