我有一个带有国家名称和与之对应的值的DataFrame。我使用以下代码将国家/地区转换为代码:
import pycountry
input_countries = happiness_data["Country or region"]
countries = {}
for country in pycountry.countries:
countries[country.name] = country.alpha_2
codes = [countries.get(country, 'Unknown code') for country in input_countries]
print(codes) 这将返回以下内容:
['FI', 'DK', 'NO', 'IS', 'NL', 'CH', 'SE', 'NZ', 'CA', 'AT', 'AU', 'CR', 'IL', 'LU', 'GB', 'IE', 'DE', 'BE', 'US', 'Unknown code', 'AE', 'MT', 'MX', 'FR', 'Unknown code', 'CL', 'GT', 'SA', 'QA', 'ES', 'PA', 'BR', 'UY', 'SG', 'SV', 'IT', 'BH', 'SK', 'Unknown code', 'PL', 'UZ', 'LT', 'CO', 'SI', 'NI', 'Unknown code', 'AR', 'RO', 'CY', 'EC', 'KW', 'TH', 'LV', 'Unknown code', 'EE', 'JM', 'MU', 'JP', 'HN', 'KZ', 'Unknown code', 'HU', 'PY', 'Unknown code', 'PE', 'PT', 'PK', 'Unknown code', 'PH', 'RS', 'Unknown code', 'LY', 'ME', 'TJ', 'HR', 'HK', 'DO', 'BA', 'TR', 'MY', 'BY', 'GR', 'MN', 'MK', 'NG', 'KG', 'TM', 'DZ', 'MA', 'AZ', 'LB', 'ID', 'CN', 'Unknown code', 'BT', 'CM', 'BG', 'GH', 'Unknown code', 'NP', 'JO', 'BJ', 'Unknown code', 'GA', 'Unknown code', 'ZA', 'AL', 'Unknown code', 'KH', 'Unknown code', 'SN', 'SO', 'NA', 'NE', 'BF', 'AM', 'Unknown code', 'GN', 'GE', 'GM', 'KE', 'MR', 'MZ', 'TN', 'BD', 'IQ', 'Unknown code', 'ML', 'SL', 'LK', 'MM', 'TD', 'UA', 'ET', 'Unknown code', 'UG', 'EG', 'ZM', 'TG', 'IN', 'LR', 'KM', 'MG', 'LS', 'BI', 'ZW', 'HT', 'BW', 'Unknown code', 'MW', 'YE', 'RW', 'Unknown code', 'AF', 'CF', 'SS']我删除了所有的未知代码,所以我只剩下已知的代码了。我想在地图上绘制这些代码,这样我就可以直观地了解我的数据来自哪里。有没有办法做到这一点?我试过使用pygal,但没有用。
谢谢你能给我的任何帮助和建议。如果您想尝试一下,可以随意复制国家/地区列表,并构造一些随机整数值,看看是否能够在地图上绘制与这些国家/地区标签对应的值。此外,如果我可以只使用国家/地区名称(即“孟加拉”)具有值(即(8)),并根据该值在地图上绘制色调,这也可以工作。
非常感谢!
发布于 2020-11-06 05:54:53
您可以使用this list of countries, codes and coordinates将alpha_2国家代码映射到坐标,然后使用任何复杂的绘图库在地图上绘制数据,如matplotlib and cartopy、matplotlib and geopandas或-如果您希望地图具有交互性和/或用于web - plotly and mapbox。
发布于 2020-11-06 05:29:02
了解Plotly和内置的Country和State Geometries
https://stackoverflow.com/questions/64705422
复制相似问题