当前位置: 移动技术网 > IT编程>脚本编程>Python > pyhton实现世界疫情地图

pyhton实现世界疫情地图

2020年04月29日  | 移动技术网IT编程  | 我要评论

中央三台星光大道,经典天才争霸战,电脑玩手机网游

  1 import json
  2 import requests
  3 import jsonpath
  4 
  5 
  6 from pyecharts.charts import map,geo
  7 from pyecharts import options as opts
  8 from pyecharts.globals import geotype,rendertype
  9 
 10 # 1.目标网址
 11 url = 'https://api.inews.qq.com/newsqa/v1/automation/foreign/country/ranklist'
 12 # 2.模拟浏览器实现访问url
 13 resp = requests.post(url).text
 14 # print(resp)
 15 data = json.loads(resp)
 16 # print(data)
 17 # print(data)
 18 # 3.从网页源代码中提取数据
 19 name = jsonpath.jsonpath(data, "$..name")
 20 print(len(name))
 21 confirm = jsonpath.jsonpath(data, "$..confirm")
 22 print(len(confirm))
 23 # suspect = jsonpath.jsonpath(data, "$..suspect")
 24 # print(len(suspect))
 25 # dead = jsonpath.jsonpath(data, "$..dead")
 26 # print(len(dead))
 27 # heal = jsonpath.jsonpath(data, "$..heal")
 28 # print(len(heal))
 29 # print(china)
 30 # data_lists = []
 31 # for i in range(179):
 32 #     data_list = []
 33 #     data_list.append(name[i])
 34 #     data_list.append(confirm[i])
 35 #     data_lists.append(data_list)
 36 # print(data_lists)
 37 
 38 a = zip(name, confirm)
 39 
 40 
 41 namemap = {
 42     'singapore rep.': '新加坡',
 43     'dominican rep.': '多米尼加',
 44     'palestine': '巴勒斯坦',
 45     'bahamas': '巴哈马',
 46     'timor-leste': '东帝汶',
 47     'afghanistan': '阿富汗',
 48     'guinea-bissau': '几内亚比绍',
 49     "côte d'ivoire": '科特迪瓦',
 50     'siachen glacier': '锡亚琴冰川',
 51     "br. indian ocean ter.": '英属印度洋领土',
 52     'angola': '安哥拉',
 53     'albania': '阿尔巴尼亚',
 54     'united arab emirates': '阿联酋',
 55     'argentina': '阿根廷',
 56     'armenia': '亚美尼亚',
 57     'french southern and antarctic lands': '法属南半球和南极领地',
 58     'australia': '澳大利亚',
 59     'austria': '奥地利',
 60     'azerbaijan': '阿塞拜疆',
 61     'burundi': '布隆迪',
 62     'belgium': '比利时',
 63     'benin': '贝宁',
 64     'burkina faso': '布基纳法索',
 65     'bangladesh': '孟加拉国',
 66     'bulgaria': '保加利亚',
 67     'the bahamas': '巴哈马',
 68     'bosnia and herz.': '波斯尼亚和黑塞哥维那',
 69     'belarus': '白俄罗斯',
 70     'belize': '伯利兹',
 71     'bermuda': '百慕大',
 72     'bolivia': '玻利维亚',
 73     'brazil': '巴西',
 74     'brunei': '文莱',
 75     'bhutan': '不丹',
 76     'botswana': '博茨瓦纳',
 77     'central african rep.': '中非共和国',
 78     'canada': '加拿大',
 79     'switzerland': '瑞士',
 80     'chile': '智利',
 81     'china': '中国',
 82     'ivory coast': '象牙海岸',
 83     'cameroon': '喀麦隆',
 84     'dem. rep. congo': '刚果(金)',
 85     'congo': '刚果(布)',
 86     'colombia': '哥伦比亚',
 87     'costa rica': '哥斯达黎加',
 88     'cuba': '古巴',
 89     'n. cyprus': '北塞浦路斯',
 90     'cyprus': '塞浦路斯',
 91     'czech rep.': '捷克',
 92     'germany': '德国',
 93     'djibouti': '吉布提',
 94     'denmark': '丹麦',
 95     'algeria': '阿尔及利亚',
 96     'ecuador': '厄瓜多尔',
 97     'egypt': '埃及',
 98     'eritrea': '厄立特里亚',
 99     'spain': '西班牙',
100     'estonia': '爱沙尼亚',
101     'ethiopia': '埃塞俄比亚',
102     'finland': '芬兰',
103     'fiji': '斐',
104     'falkland islands': '福克兰群岛',
105     'france': '法国',
106     'gabon': '加蓬',
107     'united kingdom': '英国',
108     'georgia': '格鲁吉亚',
109     'ghana': '加纳',
110     'guinea': '几内亚',
111     'gambia': '冈比亚',
112     'guinea bissau': '几内亚比绍',
113     'eq. guinea': '赤道几内亚',
114     'greece': '希腊',
115     'greenland': '格陵兰',
116     'guatemala': '危地马拉',
117     'french guiana': '法属圭亚那',
118     'guyana': '圭亚那',
119     'honduras': '洪都拉斯',
120     'croatia': '克罗地亚',
121     'haiti': '海地',
122     'hungary': '匈牙利',
123     'indonesia': '印度尼西亚',
124     'india': '印度',
125     'ireland': '爱尔兰',
126     'iran': '伊朗',
127     'iraq': '伊拉克',
128     'iceland': '冰岛',
129     'israel': '以色列',
130     'italy': '意大利',
131     'jamaica': '牙买加',
132     'jordan': '约旦',
133     'japan': '日本',
134     'japan': '日本本土',
135     'kazakhstan': '哈萨克斯坦',
136     'kenya': '肯尼亚',
137     'kyrgyzstan': '吉尔吉斯斯坦',
138     'cambodia': '柬埔寨',
139     'korea': '韩国',
140     'kosovo': '科索沃',
141     'kuwait': '科威特',
142     'lao pdr': '老挝',
143     'lebanon': '黎巴嫩',
144     'liberia': '利比里亚',
145     'libya': '利比亚',
146     'sri lanka': '斯里兰卡',
147     'lesotho': '莱索托',
148     'lithuania': '立陶宛',
149     'luxembourg': '卢森堡',
150     'latvia': '拉脱维亚',
151     'morocco': '摩洛哥',
152     'moldova': '摩尔多瓦',
153     'madagascar': '马达加斯加',
154     'mexico': '墨西哥',
155     'macedonia': '马其顿',
156     'mali': '马里',
157     'myanmar': '缅甸',
158     'montenegro': '黑山',
159     'mongolia': '蒙古',
160     'mozambique': '莫桑比克',
161     'mauritania': '毛里塔尼亚',
162     'malawi': '马拉维',
163     'malaysia': '马来西亚',
164     'namibia': '纳米比亚',
165     'new caledonia': '新喀里多尼亚',
166     'niger': '尼日尔',
167     'nigeria': '尼日利亚',
168     'nicaragua': '尼加拉瓜',
169     'netherlands': '荷兰',
170     'norway': '挪威',
171     'nepal': '尼泊尔',
172     'new zealand': '新西兰',
173     'oman': '阿曼',
174     'pakistan': '巴基斯坦',
175     'panama': '巴拿马',
176     'peru': '秘鲁',
177     'philippines': '菲律宾',
178     'papua new guinea': '巴布亚新几内亚',
179     'poland': '波兰',
180     'puerto rico': '波多黎各',
181     'dem. rep. korea': '朝鲜',
182     'portugal': '葡萄牙',
183     'paraguay': '巴拉圭',
184     'qatar': '卡塔尔',
185     'romania': '罗马尼亚',
186     'russia': '俄罗斯',
187     'rwanda': '卢旺达',
188     'w. sahara': '西撒哈拉',
189     'saudi arabia': '沙特阿拉伯',
190     'sudan': '苏丹',
191     's. sudan': '南苏丹',
192     'senegal': '塞内加尔',
193     'solomon is.': '所罗门群岛',
194     'sierra leone': '塞拉利昂',
195     'el salvador': '萨尔瓦多',
196     'somaliland': '索马里兰',
197     'somalia': '索马里',
198     'serbia': '塞尔维亚',
199     'suriname': '苏里南',
200     'slovakia': '斯洛伐克',
201     'slovenia': '斯洛文尼亚',
202     'sweden': '瑞典',
203     'swaziland': '斯威士兰',
204     'syria': '叙利亚',
205     'chad': '乍得',
206     'togo': '多哥',
207     'thailand': '泰国',
208     'tajikistan': '塔吉克斯坦',
209     'turkmenistan': '土库曼斯坦',
210     'east timor': '东帝汶',
211     'trinidad and tobago': '特里尼达和多巴哥',
212     'tunisia': '突尼斯',
213     'turkey': '土耳其',
214     'tanzania': '坦桑尼亚',
215     'uganda': '乌干达',
216     'ukraine': '乌克兰',
217     'uruguay': '乌拉圭',
218     'united states': '美国',
219     'uzbekistan': '乌兹别克斯坦',
220     'venezuela': '委内瑞拉',
221     'vietnam': '越南',
222     'vanuatu': '瓦努阿图',
223     'west bank': '西岸',
224     'yemen': '也门',
225     'south africa': '南非',
226     'zambia': '赞比亚',
227     'zimbabwe': '津巴布韦'
228 }
229 
230 
231 map_ = map(opts.initopts(width='1200px', height='600px')).add(series_name="世界各国病死率",  # 设置提示框标签
232                  data_pair=a,  # 输入数据
233                  maptype="world",  # 设置地图类型为世界地图
234                  name_map=namemap,  # 添加映射
235                  is_map_symbol_show=false  # 不显示标记点
236                  )
237 
238 # 设置系列配置项
239 map_.set_series_opts(label_opts=opts.labelopts(is_show=false))  # 不显示国家名称
240 # 设置全局配置项
241 map_.set_global_opts(title_opts=opts.titleopts(title="国外疫情情况"),  # 设置图标题
242                     visualmap_opts=opts.visualmapopts(max_=1000000, is_piecewise=true))  # 显示图例
243 
244 # map_.set_global_opts(title_opts=opts.titleopts(title="国外疫情情况"),  # 设置图标题
245 #                      visualmap_opts=opts.visualmapopts(pieces=[  # 自定义分组的分店和颜色
246 #                              {"min": 900000, "color": "#800000"},
247 #                              {"min": 50000, "max": 500000, "lable":'0.15~0.19', "color": "#aa0000"},  # 栗色
248 #                              {"min": 10000, "max": 50000, "color": "#cc0000"},  # 耐火砖
249 #                              {"min": 1000, "max": 10000, "color": "#ff0000"},  # 印度红
250 #                              {"min": 0, "max": 1000, "color": "#ff3333"},  # 玫瑰棕色
251 #                              {"max": 0, "color": "#ffcccc"},  # 薄雾玫瑰
252 #                      ],
253 
254 
255 #                              is_piecewise=true))  # 显示分段式图例
256 
257 
258 map_.render("国外疫情情况.html")

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网