matplotlib.pyplot.subplot 绘制多个子图

x = ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
y = [235,150,222,150,333,180]

plt.figure(figsize=(15,12)) #设定画布大小

plt.subplot(3,3,1)
plt.title('柱形图')
plt.bar(x,y)

plt.subplot(3,3,2)
plt.title('横向柱形图')
plt.barh(x,y)

plt.subplot(3,3,3)
plt.title('折线图')
plt.plot(x,y)

plt.subplot(3,3,4) 
plt.title('饼状图')
plt.pie(y,labels=x)

plt.subplot(3,3,5)
plt.title('散点图')
plt.scatter(x,y)

plt.subplot(3,3,6)
plt.title('直方图')
d = 50 # 组距
num_bins = (max(y)-min(y))//d
plt.hist(y,num_bins)

plt.subplot(3,1,3) 
plt.title('面积图')
plt.plot(x, y)
plt.fill_between(
    x,                 # 覆盖的区域,表示整个x都覆盖
    0,                 # 覆盖的下限
    y,                 # 覆盖的上限,是y这个曲线
    facecolor='green', # 覆盖区域的颜色
    alpha=0.3          # 覆盖区域的透明度[0,1],其值越小,表示越透明
)

plt.show()

在这里插入图片描述

plt.subplot(numRows, numCols, plotNum) 参数:

图表的整个绘图区域被分成 numRows 行和 numCols 列;

plotNum 指定创建的对象所在的区域,按照从左到右,从上到下的顺序对每个子区域进行编号,左上的子区域的编号为1

例子中的区域被划分为 3行3列,最后的面积图占用了3列,单独显示在一行中,这时候需要对区域重新划分,原先3行不变,只有一张图,列数改为1,按 3*1 重新划分后,前面的六幅图占用了两行,所以最后的参数为3,最后为 3,1,3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JOSON.

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值