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 COUNTRIESdef get_country_code(country_name):"""根据指定的国家,返回pygal使用的两个字母的国别码"""for code, name in COUNTRIES.items():if name == country_name:return code# 如果没有找到指定的国家,就返回Nonereturn 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] = popelif pop < 1000000000:cc_pops_2[cc] = popelse: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之利用Pygal+2010年世界人口=绘制世界地图相关推荐

  1. python matplotlib animation制作世界人口变动动画

    python matplotlib animation制作世界人口变动动画 主要利用animation 做了个世界人口动画,数据从网上下载的.做成json格式的.读入pandas.没有放数据, 只是弄 ...

  2. Python对JSON文件世界人口数据进行可视化

    制作世界人口地图,用json模块来处理,将人口数据进行可视化!!! 下载JSON格式的人口数据,下面附上完整的,在网站中https://datahub.io/下载的数据集的详细过程!!! 1.下载世界 ...

  3. python读取json文件制作中国人口地图_Python对JSON文件世界人口数据进行可视化

    制作世界人口地图,用json模块来处理,将人口数据进行可视化!!! 下载JSON格式的人口数据,下面附上完整的,在网站中https://datahub.io/下载的数据集的详细过程!!! 1.下载世界 ...

  4. python爬取知乎话题广场_学习python爬虫---爬虫实践:爬取B站排行榜2(爬取全部分类排行榜、利用pygal库作图)...

    前面我们爬取了B站上全站的排行榜,详细见:魏勇:学习python爬虫---爬虫实践:爬取B站排行榜​zhuanlan.zhihu.com 一.爬取全部分类排行榜 我们观察一下B站排行榜,那里还有番剧排 ...

  5. 利用Python爬取全国250m精度的人口数据

    此次以GeoQ(智图)为基础,利用Python爬取全国250m精度的人口数据(GeoQ)这个网站开放过250m精度的人口分布数据,而且人口分布有年龄分段等属性.先得注册登录到达创建地图的界面. 看人口 ...

  6. 利用Python爬取全国250m精度的人口数据(GeoQ)、房价数据和公交站(线路)等数据

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 中原百科 GIS大师兄 PS:如有需要Python学习资料的小伙伴可 ...

  7. python我国有13亿人口、假定按人口年增长0.8%计算_2000年世界人口50亿.按年增长率8%0计算.多少年后.世界人口超过100亿.请设计出一个算法.并画出程序框图....

    1957年世界人口30亿,17年后(即1974年)增加了10亿,即达40亿:又过13年达到50亿:到1999年全世界总人口达到60亿.以此速度,人口学专家预测到2025年,世界人口将达到80亿:而到2 ...

  8. python图表之pygal入门篇

    pygal的简单使用 例子来自此书: <Python编程从入门到实战>[美]Eric Matthes pygal是一个SVG图表库.SVG是一种矢量图格式.全称Scalable Vecto ...

  9. python怎么实现检验_[python skill]利用python实现假设性检验方法

    [python skill]利用python实现假设性检验方法 刀尔東 2018-08-03 09:19:13 1244 收藏 2 版权 hello,大噶好,最近新学习了利用python实现假设性检验 ...

最新文章

  1. 机器学习数学基础:常见分布与假设检验
  2. 前端开发应届生面试指南(含各大公司具体指南及面试真题)
  3. linux 清理内存的c函数,Linux C函数之内存配置函数
  4. touchWX使用 echarts
  5. Linux 系统服务管理和控制程序(初始化系统/Init System) -- systemd 介绍
  6. kubectl logs -f tail 显示100_系统管理员应该知道的9个kubectl命令
  7. group() 数组java_java 根据每个分组个数,分解数组. | 学步园
  8. 不必仰望他人,用自己的方式活着就好
  9. eclipse --->svn插件安装
  10. Centos7安装java运行环境
  11. 金蝶K3案例教程简介
  12. 2020-02-13
  13. 问题:必须使用记录或另一备份以恢复包含系统注册表
  14. 图解CRM(客户关系管理)全流程
  15. 美团因拖欠骑手工资被约谈;传苹果6月6日举办全球开发者大会;Linux 5.18开始启动停止支持ReiserFS|极客头条
  16. 单点故障(用通俗易懂的语言告诉你)
  17. Word中自己制作三线表样式,为论文撰写提高效率!
  18. 2019个人成长计划
  19. 关于优秀的管理者学习笔记
  20. html h5 php 语音录入,H5添加语音输入功能-

热门文章

  1. matlab归一化方法,数据归一化的基本方法
  2. 计算机辅助英语训练新方法,一种新的计算机辅助英语教学模式
  3. windows服务与网页交互_「桌面美化」windows 免费开源的动态壁纸桌面软件
  4. alpha和color key
  5. 雷军一往无前的十年(小米十周年公开演讲)附赠《一往无前》电子书籍
  6. SRPG游戏开发(二十二)第六章 基本框架 - 七 视图(ViewUI)
  7. TL民营医院奖金分配方案比较研究
  8. matlab电力电子仿真小结,SABER 2008电力电子仿真小结
  9. 利用7-zip软件压缩并加密自己的保密文件
  10. 交换机与二层转发原理