import pandas as pd
import matplotlib.pyplot as plt
# 数据
data = {
"普通本科": [721, 738, 749, 761, 791],
"中等职业教育": [620, 601, 593, 582, 557],
"普通高中": [797, 797, 803, 800, 793]
}
# 将数据构建为DataFrame
df = pd.DataFrame(data, index=[2014, 2015, 2016, 2017, 2018])
# 绘制分组条形图
fig, ax = plt.subplots()
df.plot(kind='bar', ax=ax)
# 在条形图上标注数值
for i, v in enumerate(df.values.flatten()):
ax.text(i, v + 5, str(v), ha='center')
# 设置图例横向排列,显示报名人数
plt.legend(title='报名人数', bbox_to_anchor=(1.05, 1), loc='upper left', ncol=1)
# 设置图表标题和坐标轴标签
plt.title('2014-2018年不同类型学校报名人数')
plt.xlabel('年份')
plt.ylabel('报名人数')
# 显示图表
plt.tight_layout()
plt.show()