Matplotlib可视化过程中如何自定义子图的大小?

本文总结了在matplotlib可视化中自定义子图大小的三种方法:使用GridSpec定义网格并添加子图,通过fig.add_axes指定子图大小,以及利用plt.axes传入比例参数创建合适尺寸的子图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#方法1:用matplotlib.gridspec.GridSpec自定义网格大小,然后添加子图fig.add_subplot
import matplotlib.pyplot as plt
import matplotlib.gridspec

x1 = np.linspace(0.0, 5.0)
x2 = np.linspace(0.0, 2.0)
 
y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)
y2 = np.cos(2 * np.pi * x2)

gs = matplotlib.gridspec.GridSpec(3,2, width_ratios=[1,1.4], 
                                       height_ratios=[1,3,1])

fig = plt.figure()

ax1 = fig.add_subplot(gs[:,0])
# ax1.plot([1,3,2,4])
ax1.plot(x1, y1, '-og', ms=3)

ax2 = fig.add_subplot(gs[1,1])
# ax2.plot([1,3,2,4])
ax2.plot(x2, y2, '-ob', ms=3)

plt.show()

#方法二:利用fig.add_axes添加子图,同时指定子图axes的大小(传入比例大小参数)
import numpy as np
import matplotlib.pyplot as plt

fig = plt.figure()
w,h = fig.get_size_inches()
div = np.array([w,h,w,h])

# define axes in by rectangle [left, bo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值