首页 前端知识 pyecharts 地图绘制

pyecharts 地图绘制

2024-05-05 12:05:55 前端知识 前端哥 839 216 我要收藏

环境描述

win11
jupyter notebook

目标效果

世界地图+按数据进行分级着色;最终效果图如下:
在这里插入图片描述

pyecharts 绘制地图时注意点

可以实现目标地图绘制效果的python库很多,这里用的是pyecharts,具体可百度。

  • 最终结果如何以图片形式输出
    这个库默认输出的是.html文件显示最终图像,不利于写文章使用,因此我这里用了snapshot_phantomjs包来进行png图片输出。
    注意:文件名以及路径不要出现中文,否则可能带来不必要麻烦。
  • 各个国家及其对应英文名:见文章最后。

代码实现

# 需要引用的库
from pyecharts import options as opts
from pyecharts.charts import Map
import random
#保存png图片
from pyecharts.render import make_snapshot
from snapshot_phantomjs import snapshot 
# 由于pyecharts默认输出类型为html文件在网页显示,
# 如果直接在网页中复制图片或者截图的话清晰度会非常差,如果想直接保存为png图片的话可以配置snapshot

#数据设置
count = [
['Russia', 9],
['China', 16],
['United States', 32],
['India', 12],
['Canada', 32],
['France', 12],
['Brazil', 2]
]

c=Map()
c.add(
    series_name="文章数", 
    data_pair=count, 
    maptype="world",
     )
        # 全局配置项
c.set_global_opts(
            # 设置标题
    title_opts=opts.TitleOpts(title="世界地图"),
            # 设置标准显示
    visualmap_opts=opts.VisualMapOpts(max_=40, is_piecewise=False),
    )
        # 系列配置项
c.set_series_opts(
            # 标签名称显示,默认为True
    label_opts=opts.LabelOpts(is_show=False, color="blue")
    )
#存为图片    
make_snapshot(snapshot,c.render(), "map.png"pixel_ratio=1)
# pixel_ratio设置为1,输出图片较小

国家名称中英文对照表(pyecharts)

英文	中文
Zimbabwe	津巴布韦
Zambia	赞比亚
Yugoslavia	南斯拉夫
Yemen	也门
Western Sahara	西撒哈拉
Wallis and Futuna	瓦利斯群岛和富图纳群岛
W. Sahara	西撒哈拉
Vietnam	越南
Venezuela	委内瑞拉
Vanuatu	瓦努阿图
Uzbekistan	乌兹别克斯坦
Uruguay	乌拉圭
United States	美国
United Kingdom	英国
United Arab Emirates	阿拉伯联合酋长国
United Arab Emirates	阿联酋
Ukraine	乌克兰
Uganda	乌干达
Tuvalu	图瓦卢
Turkmenistan	土库曼斯坦
Turkey	土耳其
Tunisia	突尼斯
Trinidad and Tobago	特立尼达和多巴哥
Tonga	汤加
Tokelau	托克劳
Togo	多哥
Timor-Leste	东帝汶
The Bahamas	巴哈马
Thailand	泰国
Tanzania	坦桑尼亚
Tajikistan	塔吉克斯坦
Syria	叙利亚
Switzerland	瑞士
Sweden	瑞典
Swaziland	斯威士兰
Suriname	苏里南
Sudan	苏丹
Sri Lanka	斯里兰卡
Spain	西班牙
South Africa	南非
Somalia	索马里
Solomon Islands	所罗门群岛
Slovenia	斯洛文尼亚
Slovakia	斯洛伐克
Singapore Rep.	新加坡
Singapore	新加坡
Sierra Leone	塞拉利昂
Siachen Glacier	锡亚琴冰川
Seychelles	塞舌尔
Serbia	塞尔维亚
Senegal	塞内加尔
Saudi Arabia	沙特阿拉伯
Sao Tome and Principe	圣多美和普林西比
San Marino	圣马力诺
Samoa	萨摩亚
Saint Vincent and the Grenadines	圣文森特和格林纳丁斯
Saint Lucia	圣卢西亚
Saint Kitts-Nevis	圣基茨和尼维斯
Saint Helena	圣赫勒拿
S.Sudan	南苏丹
Rwanda	卢旺达
Russian Federation	俄罗斯联邦
Russia	俄罗斯
Romania	罗马尼亚
Reunion	留尼汪岛
Qatar	卡塔尔
Puerto Rico	波多黎各
Portugal	葡萄牙
Poland	波兰
Pitcairn Islands	皮特凯恩群岛
Philippines	菲律宾
Peru	秘鲁
Paraguay	巴拉圭
Papua New Guinea	巴布亚新几内亚
Panama	巴拿马
Palestine	巴勒斯坦
Palau	帕劳
Pakistan	巴基斯坦
Oman	阿曼
Norway	挪威
Norfolk Island	诺福克岛
Niue	纽埃
Nigeria	尼日利亚
Niger	尼日尔
Nicaragua	尼加拉瓜
New Zealand	新西兰
New Caledonia	新喀里多尼亚
Netherlands	荷兰
Nepal	尼泊尔
Nauru	瑙鲁
Namibia	纳米比亚
N. Cyprus	北塞浦路斯
Myanmar	缅甸
Mozambique	莫桑比克
Morocco	摩洛哥
Montserrat	蒙特塞拉特
Montenegro	黑山
Mongolia	蒙古
Monaco	摩纳哥
Moldova	摩尔多瓦
Micronesia	密克罗尼西亚
Mexico	墨西哥
Mayotte	马约特
Mauritius	毛里求斯
Mauritania	毛里塔尼亚
Martinique	马提尼克岛
Marshall Islands	马绍尔群岛
Malta	马耳他
Mali	马里
Maldives	马尔代夫
Malaysia	马来西亚
Malawi	马拉维
Madagascar	马达加斯加
Macedonia	马其顿
Luxembourg	卢森堡
Lithuania	立陶宛
Liechtenstein	列支敦士登
Libya	利比亚
Liberia	利比里亚
Lesotho	莱索托
Lebanon	黎巴嫩
Latvia	拉脱维亚
Laos	老挝
Kyrgyzstan	吉尔吉斯斯坦
Kuwait	科威特
Kosovo	科索沃
Korea (South)	韩国
Korea (North)	朝鲜
Korea	韩国
Kiribati	基里巴斯
Kenya	肯尼亚
Kazakstan	哈萨克斯坦
Jordan	约旦
Jersey	泽西岛
Japan	日本
Japan	日本本土
Jamaica	牙买加
Ivory Coast	象牙海岸
Italy	意大利
Israel	以色列
Isle of Man	马恩岛
Ireland	爱尔兰
Iraq	伊拉克
Iran	伊朗
Indonesia	印度尼西亚
India	印度
Iceland	冰岛
Hungary	匈牙利
Honduras	洪都拉斯
Haiti	海地
Guyana	圭亚那
Guinea-Bissau	几内亚比绍
Guinea Bissau	几内亚比绍
Guinea	几内亚
Guernsey	根西岛
Guatemala	危地马拉
Guam	关岛
Guadeloupe	瓜德罗普岛
Grenada	格林纳达
Greece	希腊
Gibraltar	直布罗陀
Ghana	加纳
Germany	德国
Georgia	格鲁吉亚
Gambia	冈比亚
Gabon	加蓬
French Southern and Antarctic Lands	法属南半球和南极领地
French Polynesia	法属波利尼西亚
French Guiana	法属圭亚那
Franch Metropolitan	法国大都会
Franch Guiana	法属圭亚那
France	法国
Finland	芬兰
Fiji	斐济
Faroe Islands	法罗群岛
Ethiopia	埃塞俄比亚
Estonia	爱沙尼亚
Eritrea	厄立特里亚
Equatorial Guinea	赤道几内亚
Eq. Guinea	赤道几内亚
El Salvador	萨尔瓦多
Egypt	埃及
Ecuador	厄瓜多尔
East Timor	东帝汶
Dominican Rep.	多米尼加
Dominica	多米尼加
Djibouti	吉布提
Djibouti	吉布提
Denmark	丹麦
Denmark	丹麦
Dem. Rep. Korea	朝鲜
Dem. Rep. Congo	刚果民主共和国
Czech Rep.	捷克
Czech	捷克
Cyprus	塞浦路斯
Cyprus	塞浦路斯
Cuba	古巴
Cuba	古巴
Croatia	克罗地亚
Croatia	克罗地亚
Côted Ivoire	科特迪瓦
Cote D'Ivoire	科特迪瓦
Costa Rica	哥斯达黎加
Costa Rica	哥斯达黎加
Cook Islands	库克群岛
Congo (Congo-Kinshasa)	刚果(金)
Congo	刚果
Comoros	科摩罗
Colombia	哥伦比亚
Cocos (keeling) Islands	科科斯(基林)群岛
Christmas Islands	圣诞岛
China	中国
Chile	智利
Chad	乍得
Central African Republic	中非
Central African Rep.	中非
Cape Verde	佛得角
Canada	加拿大
Cameroon	喀麦隆
Cambodia	柬埔寨
Burundi	布隆迪
Burkina Faso	布基纳法索
Bulgaria	保加利亚
Brunei	文莱
Brazil	巴西
Br. Indian Ocean Ter.	英属印度洋领土
Bouvet Island	布维岛
Botswana	博茨瓦纳
Bosnia and Herzegovina	波斯尼亚和黑塞哥维那
Bosnia and Herz.	波斯尼亚和黑塞哥维那
Bolivia	玻利维亚
Bhutan	不丹
Bermuda	百慕大
Benin	贝宁
Belize	伯利兹
Belgium	比利时
Belarus	白俄罗斯
Barbados	巴巴多斯
Bangladesh	孟加拉
Bahrain	巴林
Bahamas	巴哈马
Azerbaijan	阿塞拜疆
Austria	奥地利
Australia	澳大利亚
Aruba	阿鲁巴
Armenia	亚美尼亚
Argentina	阿根廷
Antigua and Barbuda	安提瓜和巴布达
Anguilla	安圭拉
Angola	安哥拉
Andorra	安道尔
American Samoa	美属萨摩亚
Algeria	阿尔及利亚
Albania	阿尔巴尼亚
Aland Islands	奥兰群岛
Afghanistan	阿富汗

参考:
https://www.cnblogs.com/mashukui/p/16294592.html

转载请注明出处或者链接地址:https://www.qianduange.cn//article/6907.html
标签
评论
发布的文章

String转Json的几种方式

2024-05-09 11:05:04

iOS ------ JSONModel源码

2024-05-09 11:05:02

java去除 json 中的 \n, \t, \r

2024-05-09 11:05:57

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!