使用subplot2grid()函数绘制三个子图,2022届毕业生和2023届毕业生求值意向分析,2023届毕业生期望就业的城市等级,2022届毕业生和2023届毕业生找工作时间分布
时间: 2024-03-05 11:54:09 浏览: 128
基于python的subplot2grid多子图绘制与实现
好的,以下是使用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]
y_city = [0.1, 0.3, 0.4, 0.2]
# 创建画布,并设置画布大小
fig = plt.figure(figsize=(10, 8))
# 在画布上创建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行第1列
ax3 = plt.subplot2grid((2, 2), (1, 0))
# 绘制2023届毕业生期望就业的城市等级分布柱状图
ax3.bar(x, y_city)
# 设置标题、坐标轴标签等
ax3.set_title('2023届毕业生期望就业的城市等级分布')
ax3.set_xlabel('城市等级')
ax3.set_ylabel('占比')
# 在画布上创建2行2列的子图,第2行第2列
ax4 = plt.subplot2grid((2, 2), (1, 1))
# 定义数据
x_time = ['3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
y_time_2022 = [0.05, 0.1, 0.15, 0.2, 0.2, 0.1, 0.1, 0.05, 0.025, 0.025]
y_time_2023 = [0.02, 0.04, 0.06, 0.1, 0.2, 0.2, 0.15, 0.1, 0.05, 0.08]
# 绘制2022届毕业生和2023届毕业生求职时间分布折线图
ax4.plot(x_time, y_time_2022, label='2022届毕业生')
ax4.plot(x_time, y_time_2023, label='2023届毕业生')
# 设置标题、坐标轴标签等
ax4.set_title('2022届毕业生和2023届毕业生求职时间分布')
ax4.set_xlabel('月份')
ax4.set_ylabel('占比')
ax4.legend()
# 调整子图之间的间距
plt.subplots_adjust(wspace=0.3, hspace=0.5)
# 显示图像
plt.show()
```
解释一下代码:
首先,我们需要导入matplotlib库。然后,定义了三个列表x、y_2022、y_2023和y_city作为数据。
接下来,我们创建一个画布fig,并设置大小为10*8。
然后,使用subplot2grid()函数创建了一个2行2列的子图,第1行第1列,命名为ax1。在这个子图中,我们使用pie()函数绘制了2022届毕业生求职意向分析饼图,并设置了标题。
接着,我们使用subplot2grid()函数创建了一个2行2列的子图,第1行第2列,命名为ax2。在这个子图中,我们使用pie()函数绘制了2023届毕业生求职意向分析饼图,并设置了标题。
然后,使用subplot2grid()函数创建了一个2行2列的子图,第2行第1列,命名为ax3。在这个子图中,我们使用bar()函数绘制了2023届毕业生期望就业的城市等级分布柱状图,并设置了标题、坐标轴标签等。
最后,使用subplot2grid()函数创建了一个2行2列的子图,第2行第2列,命名为ax4。在这个子图中,我们使用plot()函数绘制了2022届毕业生和2023届毕业生求职时间分布折线图,并设置了标题、坐标轴标签等。
为了调整子图之间的间距,我们使用了plt.subplots_adjust()函数。
最后,使用plt.show()显示图像。
阅读全文