Python调整子图大小、位置
作者:野牛程序员:2023-07-28 12:26:35python阅读 3757
在Matplotlib中,可以使用plt.subplots()函数创建一个包含多个子图的图形,并通过调整参数来控制子图的大小和位置。plt.subplots()函数返回一个Figure对象和一个包含所有子图Axes对象的二维数组。
以下是通过调整子图大小和位置的示例代码:
import matplotlib.pyplot as plt
# 创建一个2x2的子图区域,并指定整个图形的大小
fig, axes = plt.subplots(nrows=2, ncols=2, figsize=(8, 6))
# 在第1个子图中绘制内容
axes[0, 0].plot([1, 2, 3], [4, 5, 6])
axes[0, 0].set_title('Subplot 1')
# 在第2个子图中绘制内容,并将其放大到整个图形大小的一半
axes[0, 1].plot([1, 2, 3], [4, 2, 5])
axes[0, 1].set_title('Subplot 2')
axes[0, 1].set_position([0.55, 0.55, 0.4, 0.4]) # 调整子图位置和大小
# 在第3个子图中绘制内容
axes[1, 0].plot([1, 2, 3], [2, 4, 6])
axes[1, 0].set_title('Subplot 3')
# 在第4个子图中绘制内容,并将其放大到整个图形大小的一半
axes[1, 1].plot([1, 2, 3], [3, 2, 1])
axes[1, 1].set_title('Subplot 4')
axes[1, 1].set_position([0.55, 0.05, 0.4, 0.4]) # 调整子图位置和大小
# 调整子图之间的间距
plt.tight_layout()
# 显示图形
plt.show()在上面的代码中,使用plt.subplots()创建了一个2x2的子图区域,并通过figsize参数设置了整个图形的大小。然后,在每个子图中使用axes[row, col]来绘制内容,并通过set_position()方法调整子图的位置和大小。
set_position()方法接受一个四元组,分别表示子图的左下角的x坐标、y坐标,以及子图的宽度和高度(都是相对于整个图形的比例)。
通过调整子图的位置和大小,可以实现更灵活的图形布局。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

