查看原文
其他

用python来看考研大军三百万

The following article is from GitPython Author GitPython

尽管今年研招网内部,已经做了优化改善,还是抵挡不住考生们的报名热情(网站崩溃)。



2017年考研人数增长至201万人,

2018年则达到238万人,

2019年考研报名人数达到290万人。


注:数据来自“中国教育在线”

为了看清近几年考研人数的增长趋势,我用python绘制如下的折线图。


从图中可以看出,2015年以来,考研报名人数的涨幅很大。预计今年考研人数在320-350万人。


如上图所示,2017年的报录比为2.78,2018年为3.12。随着报名人数的增多,录取人数不也在涨嘛!



实现代码


主要用到了pandas读取数据,matplotlib绘制折线图。其中遇到了一些中文编码的小坑,代码如下。


import pandas as pd
import matplotlib.pyplot as plt

# 第一,读取数据
df = pd.read_csv("kaoyan.csv", encoding='gb2312')
# print(df)

# 第二,绘制折线图

plt.rcParams['font.sans-serif'] = ['SimHei']
# 可以解释中文无法显示的问题

# 1)创建画布
plt.figure(figsize=(10,5),dpi=80)

# 2)绘制图像

plt.style.use('ggplot')
# matplotlib官方提供了五种不同的图形风格,
# 分别是:bmh、ggplot、dark_background、fivethirtyeight和grayscale

plt.plot(df["年份"], df["报名人数"] / 10000, label="报名人数")
plt.plot(df["年份"][:-1], df["录取人数"][:-1] / 10000, label="录取人数")

plt.title("近年考研人数报名及录取情况")
plt.xlabel("年份")
plt.ylabel("考生数量(单位:万人)")

# 设置数字标签
for a, b in zip(df["年份"], df["报名人数"] / 10000):
    plt.text(a, b, b, ha='center', va='bottom', fontsize=10)

for a, b in zip(df["年份"][:-1], df["录取人数"][:-1] / 10000):
    plt.text(a, b, b, ha='center', va='bottom', fontsize=10)

plt.legend()
plt.grid(True)

# 保存图像
plt.savefig("zhexian.jpg")

# 3)展示图像
plt.show()



结语


考研是一条路,也许艰辛,也许平坦。但走过这条路肯定就是艳阳天。


感谢阅读

推荐阅读:

1真实的上海IT圈:张江男vs漕河泾男

2:真实的北京IT圈:后厂村姑 vs 后厂村花?

3:为什么你的提问没人解答?

4:Python爱好者社区历史文章合集(作者篇)

5:Python爱好者社区历史文章合集(类型篇)


好看请点这里~

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存