python之利用Pygal+2010年世界人口=绘制世界地图
2018-04-02 10:55
821 查看
python之利用Pygal+2010年世界人口=绘制世界地图
工具:博主是在Pycharm下进行的。
目的:
Pygal+2010年世界人口=绘制世界地图
科普:
JSON格式
JSON格式介绍
文件夹:world_population
1:将下载的json文件复制到world_population目录下
2:country_code.py代码
# coding=utf-8 """ @author: jiajiknag 程序功能:根据指定的国家,返回pygal使用的两个字母的国别码 """ # country_codes.py from pygal.maps.world import COUNTRIES def get_country_code(country_name): """根据指定的国家,返回pygal使用的两个字母的国别码""" for code, name in COUNTRIES.items(): if name == country_name: return code # 如果没有找到指定的国家,就返回None return None
3:world_population.py代码
# coding=utf-8 """ @author: jiajiknag 程序功能: 利用2010年世界人口的json数据绘制世界人口分布 """ import json import pygal # 加亮颜色主题:LightColorizedStyle from pygal.style import LightColorizedStyle as LCS, RotateStyle as RS from country_code import get_country_code # 将数据加载到列表 filename = 'population_data.json' # 打开数据,进行下载到pop_data with open(filename) as f: pop_data = json.load(f) # 创建一个包含人口数量的字典 cc_populations = {} # 这里是遍历pop_data for pop_dict in pop_data: # 这里要对下载的json格式的文件有所了解 if pop_dict['Year'] == '2010': country_name = pop_dict['Country Name'] population = int(float(pop_dict['Value'])) code = get_country_code(country_name) if code: cc_populations[code] = population # 根据人口数量将所有的国家分为三组 cc_pops_1, cc_pops_2, cc_pops_3 = {}, {}, {} # 遍历cc_populations.items() for cc, pop in cc_populations.items(): if pop < 10000000: cc_pops_1[cc] = pop elif pop < 1000000000: cc_pops_2[cc] = pop else: cc_pops_3[cc] = pop # 看看每组分别包含多少个国家 print(len(cc_pops_1), len(cc_pops_2), len(cc_pops_3)) # 模块style-导入样式RotateStyle-实参:十六进制的RGB颜色(红,绿,蓝) wm_style = RS('#336699', base_style=LCS) # 创建实例 wm = pygal.maps.world.World(style=wm_style) wm.title = "2010年世界人口" # 添加到pygal.maps.world.World() wm.add("0-10m", cc_pops_1) wm.add("10m-1bn", cc_pops_2) wm.add(">1bn", cc_pops_3) # 以world_population.svg名字+格式保存 wm.render_to_file("world_population.svg")
4 :结果
注:
提供了大量可以免费试用的数据集
相关文章推荐
- 【Python-3.5】绘制世界人口地图
- python处理JSON格式数据并利用pygal绘制世界地图
- Python Pygal绘制世界人口地图
- caffe 利用python绘制loss曲线以及accuracy曲线
- Python 将JSON格式文件进行数据可视化制作世界人口地图(十一)
- Python利用Turtle绘制一颗小树
- python绘制ws小世界网络图形
- [置顶] 【python 可视化】python利用matplotlib库绘制散点图案例
- Python利用turtle库绘制彩虹代码示例
- python利用matplotlib库绘制饼图的方法示例
- 利用Python画小树和森林(宽度优先绘制+深度优先绘制)
- Python进阶(三十八)-数据可视化の利用matplotlib 进行折线图,直方图和饼图的绘制
- Python利用igraph绘制复杂网络聚类(社区检测)结果图
- python/folium绘制中国人口数量热力图(HeatMap)
- 170619 利用python读取wav文件及声音图形的绘制
- [置顶] 利用python进行折线图,直方图和饼图的绘制
- Windows下利用Python3绘制Caffe中的网络结构
- 利用python实现网卡流量图表绘制!!! 推荐
- 利用 python numpy +matplotlib 绘制股票k线图
- python版faster rcnn利用matlab绘制RP曲线