首页 > 解决方案 > Python3 Pygal Worldmap 数据未显示

问题描述

将 json 文件加载到列表中,转换为字典以加载到 pygal 世界地图中。当我打印字典时,数据看起来不错(对我来说),但是地图会打开(来自 svg 文件)但没有绘制数据。

没有发生追溯错误。

我没有运行最新版本的 pygal。

字典的示例输出:

{'AF':9733784,'AL':1437590,'DZ':92215683,'AO':17394550,'AG':19061,'AR':0}

下面的代码:

import json

import pygal

# Load the data into a list.

filename = 'test.json'
with open(filename, 'rb') as f:
    sr_data = json.load(f)

# Print sr_data rows.

sr_exp = {}
for sr_dict in sr_data:
    country_code = sr_dict['CountryCode']
    gross = int(float(sr_dict['Exposed']))
    if country_code:
        sr_exp[country_code] = gross

# Create map.

wm = pygal.Worldmap()
wm.title = 'SR Data'
wm.add('',sr_exp)

wm.render_to_file('sr.svg')

标签: python-3.xpygal

解决方案


字典中用作键的国家/地区代码需要小写。最简单的解决方法是更改​​线路

sr_exp[country_code] = gross

sr_exp[country_code.lower()] = gross

推荐阅读