查看原文
其他

Python数据可视化:25年GDP之变

小F 大邓和他的Python 2019-04-26

转载自公众号:法纳斯特

带着PPT设计美感的python公众号

作者:小F


说实话,这一期起的有点标题党了。


用到的Python知识并不多,只是利用Python对数据进行规整。


最多的应该是用大佬造的轮子,基于D3.js的数据可视化项目。


附上大佬的GitHub地址,有兴趣的小伙伴可以自行去围观。


https://github.com/Jannchie/Historical-ranking-data-visualization-based-on-d3.js


最后我利用大佬造的轮子,成功实现了25年间各省市GDP数据的可视化。



于是乎,你不就对各省市的GDP了解的一清二楚。


数据来源来自国家统计局。


附上相关链接,其实里面还有好多其他的数据,非常适合拿去练手。


http://data.stats.gov.cn/easyquery.htm?cn=E0103


本次的GDP数据如下,为各地区生产总值。


时间是1993年-2017年,共25年。



网站提供CSV文件下载,但是还是需要规整一下数据。


因为大佬造的轮子对数据有要求。



同时还需要注意一下编码问题,这里的CSV文件需要用gbk编码。


下面是从统计局下载下来的CSV数据。



我偷了个懒,直接就先在表格里删除了前三行,如下。



接下来便是用Python对数据进行规整,代码如下。


import pandas as pd

# 读取数据
df = pd.read_csv('gdp.csv', encoding='utf-8')
(names, values, dates) = ([], [], [])
# 记得去除地区这个列名,遍历年份
for i in df.columns[1:]:
    for j, k in zip(df[i], df['地区']):
        # 输出地区、GDP值、年份数据
        print(k, j, i)
        names.append(k)
        values.append(int(j))
        dates.append(int(i.replace('年''')))
# 生成DateFrame格式的数据
data = {
    'name': names,
    'type''',
    'value': values,
    'date': dates
}
# 将数据转存为新的CSV文件
frame = pd.DataFrame(data)
# 设置编码格式,避免乱码
frame.to_csv('gdp_last.csv', encoding='utf_8_sig')


获取的CSV数据如下。



和大佬造的轮子所需数据格式是一样的,这里我不设置类型。


接下来就是克隆大佬的项目代码到你的计算机里。


这里以前我只是上传代码,没有去下载项目代码,所以不是很清楚怎么下载下来。


经过这次算是学会了。


首先安装一下GitHub Desktop,然后用你的GitHub账号登陆它。


配置一下你的用户名及绑定邮箱,便能克隆其他人的项目到你的本地。


然后打开src目录下的bargraph.html,浏览器就会打开一个网页。


在网页里点击选择文件,把文件上传上去就成功了。


网页上就会有动态视频出现,如下。


是不是发现很有意思,哈哈。


这里我根据自己个人需要,对大佬的轮子进行了修改。


修改的地方是在src目录下的config.js文件里。


主要是一些小细节的修改,比如最多显示的条目数,标题,以及条目的颜色。


修改的文件及我的CSV文件都已经上传到GitHub上头了。


有兴趣的小伙伴可以自行去围观,通过阅读原文即可直接到我的GitHub。

精选文章

pkuseg:领域细分的中文分词工具

啥是佩奇?爷爷,这就是佩奇呀!

为什么你要为2020,而不是2019做计划?

如何让python代码显示进度信息?   

余额宝百万体验金等你来领

我是如何通过python挣外快的  

PySimpleGUI: 开发自己第一个软件  

自然语言处理之LDA主题模型    

100G 文本分析语料资源(免费下载)      

15个最好的数据科学领域Python库     


千山万水总是情,点个「好看」行不行。

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

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