zoukankan      html  css  js  c++  java
  • 使用pygal.maps.world库读取JSON格式文件,显示世界人口地图图示

    import json
    import pygal.maps.world     #引入世界地图
    from pygal_maps_world.i18n import COUNTRIES     #引入世界个国家
    
    def get_country_code(country_name):
        """根据国家的名称,获取国家的二位简称"""
        for code,name in COUNTRIES.items():
            if country_name==name:
                return  code
        return None #没有值就返回none
    
    filename=r"population_data.json"
    with open(filename) as f:   #f是打开文件的对象
        pop_data=json.load(f)   #
        #创建一个字典存储:简称:人口
        pop1,pop2,pop3={},{},{}
        #遍历每个国家的人口,只获取2010年的
        for pop in pop_data:
            if pop['Year']=='2010':
                country_name=pop['Country Name']
                quentity=int(float(pop["Value"]))
                code= get_country_code(country_name)
                if code:
                    if quentity<10000000 :
                        pop1[code] =quentity
                    elif quentity<100000000 :
                        pop2[code]=quentity
                    else :
                        pop3[code]=quentity
                else:
                    if quentity<10000000 :
                        pop1[country_name] =quentity
                    elif quentity<100000000 :
                        pop2[country_name]=quentity
                    else :
                        pop3[country_name]=quentity
    #创建世界地图对象
    wm=pygal.maps.world.World()
    wm.title="2010 世界人口"
    #方法add() ,它接受一个标签和一个列表或字典,后者包含我们要突出的国家的国别码--人口数。
    # 每次调用add() 都将为指定的国家选择一种新颜色,并在图表左边显示该颜色和指定的标签
    wm.add('0-10m',pop1 )
    wm.add('10m-100m',pop2)
    wm.add('>100m',pop3)
    
    #提交到制定文件
    wm.render_to_file('world_pop.svg')
  • 相关阅读:
    jquery插件库收集网站
    百度地图api笔记
    css3 hover 动画
    使用Slip.js快速创建整屏滑动的手机网页
    mobile移动端,PC桌面端页面无刷新过场JS骨架
    zepto.js手机端网页上下手指滑动图片切换效果代码
    onepage-scroll – jQuery单页/全屏滚动插件
    css3loading动画
    onepage scorll全屏滚动插件
    css3动画集
  • 原文地址:https://www.cnblogs.com/ghgxm520/p/8580040.html
Copyright © 2011-2022 走看看