使用subplot2grid()函数绘制三个子图,2022届毕业生和2023届毕业生求值意向分析,
时间: 2024-03-05 12:54:03 浏览: 66
好的,以下是使用subplot2grid()函数绘制三个子图的示例代码:
```
import matplotlib.pyplot as plt
# 定义数据
x = ['非常感兴趣', '比较感兴趣', '不太感兴趣', '不感兴趣']
y_2022 = [0.2, 0.5, 0.2, 0.1]
y_2023 = [0.1, 0.3, 0.4, 0.2]
# 创建画布,并设置画布大小
fig = plt.figure(figsize=(10, 6))
# 在画布上创建2行2列的子图,第1行第1列
ax1 = plt.subplot2grid((2, 2), (0, 0))
# 绘制2022届毕业生求职意向分析饼图
ax1.pie(y_2022, labels=x, autopct='%1.1f%%')
# 设置标题
ax1.set_title('2022届毕业生求职意向分析')
# 在画布上创建2行2列的子图,第1行第2列
ax2 = plt.subplot2grid((2, 2), (0, 1))
# 绘制2023届毕业生求职意向分析饼图
ax2.pie(y_2023, labels=x, autopct='%1.1f%%')
# 设置标题
ax2.set_title('2023届毕业生求职意向分析')
# 在画布上创建2行2列的子图,第2行
ax3 = plt.subplot2grid((2, 2), (1, 0), colspan=2)
# 绘制2022届毕业生和2023届毕业生求职意向分析柱状图
ax3.bar(x, y_2022, width=0.4, label='2022届毕业生')
ax3.bar([i+0.4 for i in range(len(x))], y_2023, width=0.4, label='2023届毕业生')
# 设置标题、坐标轴标签等
ax3.set_title('2022届毕业生和2023届毕业生求职意向分析')
ax3.set_xlabel('求职意向')
ax3.set_ylabel('占比')
ax3.legend()
# 调整子图之间的间距
plt.subplots_adjust(wspace=0.3, hspace=0.5)
# 显示图像
plt.show()
```
解释一下代码:
首先,我们需要导入matplotlib库。然后,定义了两个列表x、y_2022和y_2023作为数据。
接下来,我们创建一个画布fig,并设置大小为10*6。
然后,使用subplot2grid()函数创建了一个2行2列的子图,第1行第1列,命名为ax1。在这个子图中,我们使用pie()函数绘制了2022届毕业生求职意向分析饼图,并设置了标题。
接着,我们使用subplot2grid()函数创建了一个2行2列的子图,第1行第2列,命名为ax2。在这个子图中,我们使用pie()函数绘制了2023届毕业生求职意向分析饼图,并设置了标题。
最后,使用subplot2grid()函数创建了一个2行1列的子图,第2行,命名为ax3。在这个子图中,我们使用bar()函数绘制了2022届毕业生和2023届毕业生求职意向分析柱状图,并设置了标题、坐标轴标签等。
为了调整子图之间的间距,我们使用了plt.subplots_adjust()函数。
最后,使用plt.show()显示图像。
阅读全文