数据获取:中国产业信息网网站的信息,并将获这些信息写入excel表格。
2.使用工具
使用到的库有:
①matplotlib库
②requests库
③pandas库
④BeautifulSoup库
⑤pyecharts库
⑥bs4库
⑦csv库
报告中使用requests库爬取网页获取数据,利用bs4库解析数据,利用pandas库读取数据,利用matplotlib库、BeautifulSoup库和pyecharts库实现数据可视化。
3.数据获取步骤
第一步:从网页上获取HTML内容。
第二步:分析网页内容并提取有用数据。
第三步:将获得的数据写入Excel文件。
4.页面分析如下
5.程序代码
(1)获取数据及各地区粮食产量获取的代码如下(爬虫程序及运行结果如图1所示)
图1爬虫程序及运行结果
(2)将获得全国各地区的粮食产量以csv形式存储到Excel表格中,代码如下:
3.数据保存到Excel文件(如图2所示)
图2粮食产量Excel文件截图
三、数据处理和分析
1.数据分析
对全国各地区粮食总产量数据总体以及全国粮食产量排名前五的地区分析。用python对各地区粮食产量数据进行可视化处理,制作出柱状图。(如图3所示)
1importpandasaspd2importmatplotlib.pyplotasplt3frommatplotlibimportrcParams4rcParams['font.family']='simhei'#汉字显示的字体5sheet=pd.read_csv("C:\\Users\Qi520503\Desktop\mpython\\Ulist1.csv",encoding="GBK")67sheet_new=sheet[0:31]#数据太多,因此切片处理8sheet_new.plot.bar(x="地区",y=["2016年","2017年","2018年","2019年","2020年"],9color=["red","blue","yellow","green","orange"])10plt.title('各地区粮食产量图',fontsize=10,fontweight='bold')11plt.xlabel('地区',fontweight='bold')12plt.ylabel('粮食产量',fontweight='bold')13plt.hist(sheet['2020年'],bins=(50),color="green")14plt.title('2016-2020全国各地区粮食产量柱状图',fontsize=12,fontweight='bold')15plt.xlabel('地区',fontsize=12,fontweight='bold')16plt.ylabel('粮食产量/万吨',fontsize=12,fontweight='bold')17plt.show()
图3各地区粮食产量走势
2.统计江西、山东、河南和湖北四省粮食产量,四省粮食的产量及对比绘制柱状图。(如图4所示)
图4江西、山东、河南和湖北四省粮食产量柱状图
3.统计全国粮食产量排名前五名省(市,区)粮食产量,粮食产量总和绘制柱状图。(如图5所示)
图5全国粮食产量排名前五名粮食产量总和图
4.统计全国粮食产量排名前五名省(市,区)粮食产量在全国的分布,绘制分布地图。(如图6所示)
图6全国粮食总产量前五地区在全国的分布
5.统计全国粮食产量排名前五名省(市,区)粮食产量历年趋势,绘制折线图。(如图7所示)
6..统计全国各地区粮食总产量趋势,绘制折线图。(如图8所示)
1importpandasaspd2importmatplotlib.pyplotasplt3frommatplotlibimportrcParams4rcParams['font.family']='simhei'#汉字显示的字体5df=pd.read_excel("C:\\Users\Qi520503\Desktop\mpython\\Ulist5.xlsx")6#plt.legend(labels=['山东省'],loc=7)#添加图例7#plt.legend(labels=['山东省'],loc='lowercenter')8#plt.legend(loc="right")#与plt.legend(loc=1)等价9plt.plot(df["年份"],df["粮食总产量"],label='粮食总产量',linewidth=1,color='r',marker='o',10markerfacecolor='white',markersize=7)11plt.xlabel("年份")12plt.ylabel('粮食产量/万吨')13plt.title("2016年-2020年全国粮食总产量产量折线图")14plt.legend(loc="best",fontsize=8,markerscale=0.5,bbox_to_anchor=(1.05,1.0),borderaxespad=0.)15plt.grid()16plt.show()
图8全国粮食总产量折线图
7.统计全国分地区粮食产量趋势,绘制折线图。(如图9所示)
图9各地区粮食产量折线图
图10各省份的粮食产量占比
图11山东省粮食产量折线图
图12山东省粮食产量柱状图
10.基于数据可视化的进一步应用,添加了可以动态显示粮食产量分布的地图,随使用者的指针位置精准显示分省份分年份各地区的精确粮食产量,大大提高了用户使用体验,减少了使用成本。(注:图中的红点代表该地区的省会。地图如图13所示)
图13全国各地区粮食产量地图
五、数据处理与分析结果
综合以上分析,可以看出:
1、由图3,4,5,6可得全国粮食产量排名前五的地区分别是黑龙江省、河南省、山东省、安徽省、吉林省,直观的可知该五省的粮食产量基本都在20000万吨以上,总产量占我国粮食总产量的40%左右(。所以国家财政向产粮大省倾斜有助于保障国家粮食安全和产量的“压舱石”。对保障我国粮食产量和安全有重大意义。
2、由图7及权威地理数据分析,我国适合产粮的山东、河南和山东位于长江下游冲积扇形成的华北平原且近海。该地区土地肥沃,气候类型以温带季风气候为主,它的主要气候特点是:夏季高温多雨,冬季寒冷少雨,气温年较差大,降水季节变化大。适合小麦玉米等作物的生长。东北地区平原多,地形平坦,河流众多,以肥沃黑土地为主,建有很多国家级农场,受国家或者集体控制,主要气候为温带季风气候,适合种植水稻、玉米、马铃薯等作物。
3、由图8,9,黑龙江省、河南省、山东省、安徽省粮食产量呈逐年平缓递增趋势,吉林省的粮食产量呈逐年递减趋势,稍有些波动。我国粮食总产量逐年递增趋势,2019年和2020年粮食产量增长率最大,2018年粮食产量有所下降,下降了粮食总产量的0.6%,下降原因是国家宏观调控推进农业供给侧结构性改革主动调减的结果,对我国粮食安全无影响。
4、由图11分析总结,2020年粮食产量位居前三的分别为黑龙江省、河南省以及山东省。由于西部自然条件较差,很多地区都是缺水干旱,年降雨量少,平均气温低,无霜期和日照数都相对短,粮食种植业,生产条件低,再加上贫困原因,对农业投入严重不足导致农业抗灾防灾能力差,始终摆脱不了广种薄收、粗放经营、靠天吃饭的局面,所以,我国东部地区粮食产量普遍高于西部地区。因此,我们更要珍惜和合理利用每一寸土地,切实保护耕地,才能使我国粮食产量稳步增长。
5、通过图12-14中数据的分析以及国务院农村农业部发表的全国粮食产量分析年度报告可得,山东省的耕地面积占全省面积的比例在全国属前列,作为中国的储备量基地,它的粮食产量相比其他省份总体较高。据国务院农业农村部数据显示2020年全国各省食粮产量显示,前三位的省份是黑龙江(11.26%),河南省(10.20%),山东省(8.14%)据国家统计局显示,2020年,山东省粮食产量为5447万吨,同比增长1.6%。2016年之后,山东省粮食产量先减后增,2018年产量相比2017年显著下降,为5319.51万吨。山东省的粮食产量从最低年份的5320万吨增长到2020年的5447万吨,增加90万吨。2016年到2020年,山东省粮食产量持续高水平,平均在5320万吨以上,已经解决了省内乃至于全国范围内的粮食供给不足的局面。
五、程序代码。
五、总结
经过对python的学习,收获颇多。从最开始对计算机的基础知识的学习,让我了解了计算机的最基本原理。接着学习了基本的python语言的编程和练习,让我感受到与其它编程语言相比python语言的简洁直观,比如,列表,字典,函数等。最重要的对python中部分库的了解和学习,学会了利用python对网页数据的获取、数据处理、数据分析、数据可视化,让我感到python工具的实用性。在学习过程中遇到了大大小小的问题,通过我的独立思考和各种资料的查找,问题一一解决,让我发现学习大学计算机的乐趣。在以后的学习中,我会利用学习到的知识对生活中和学习中需要数据处理的问题进行数据可视化处理。对python的学习还不是很全面,我还会不断学习和练习python语言,提升个人的编程能力。