如何去除 Choropleth 地图中的黑点
How to get rid of black spots in Choropleth map
我的 Choropleth 地图有这些奇怪的黑点,我不确定它是否缺少数据。我如何去除那些黑点?
Picture here
我的 csv:https://drive.google.com/file/d/10FULaQ7f4lfWdPpk4bzwlD9yymGrL14d/view?usp=sharing
我的 GeoJson:https://drive.google.com/file/d/1GZljNjbIXsx55xopN9_DDlOb0Pi9Eclz/view?usp=sharing
我在 Jupyter 上运行:
# CHOROPLETH MAP
import json
kunnat_geo = r'kuntarajat.geojson'
with open(kunnat_geo) as kunnat_file:
kunnat_json = json.load(kunnat_file,encoding='utf8')
type(kunnat_json)
df = pd.read_csv('cleandata.csv')
map = folium.Map(location=[65,26], zoom_start=4, tiles='openstreetmap')
map.choropleth(geo_data=kunnat_geo,
data=df, # my dataset
columns=['Kunta', 'data'],
key_on='feature.properties.Name',
fill_color='OrRd', fill_opacity=0.7, line_opacity=0.2,
legend_name='Mielenterveyden kuntoutuskotien asiakkaat vuonna 2018',
smooth_factor=0)
marker_cluster = MarkerCluster().add_to(map)
for i in range(0,len(coords)):
folium.Marker([coords.iloc[i]['lat'], coords.iloc[i]['lng']], popup=coords.iloc[i]['data'],tooltip='Mielenterveyden kuntoutuskotien asiakkaat vuonna 2018').add_to(marker_cluster)
coords.head()
map.save('Choropleth.html')
map
编辑:解决了问题。 Folium 无法显示北欧字母 Ä、Ö 或 Å。不得不从我的数据中删除它们,现在可以了。
意识到我缺少某些城市的数据。发生这种情况是因为这些城市的名称中包含北欧字符,而 folium 无法显示它们。通过使用以下代码将所有北欧字符替换为英文字母(Ä = A,Ö = O 等)来修复它:
dictionary={'ä':'a','ö':'o','Ä':'A','å':'a'}
df.replace(dictionary, regex=True, inplace=True)
还必须在 geojson 文件中手动替换它们。
我的 Choropleth 地图有这些奇怪的黑点,我不确定它是否缺少数据。我如何去除那些黑点?
Picture here
我的 csv:https://drive.google.com/file/d/10FULaQ7f4lfWdPpk4bzwlD9yymGrL14d/view?usp=sharing
我的 GeoJson:https://drive.google.com/file/d/1GZljNjbIXsx55xopN9_DDlOb0Pi9Eclz/view?usp=sharing
我在 Jupyter 上运行:
# CHOROPLETH MAP
import json
kunnat_geo = r'kuntarajat.geojson'
with open(kunnat_geo) as kunnat_file:
kunnat_json = json.load(kunnat_file,encoding='utf8')
type(kunnat_json)
df = pd.read_csv('cleandata.csv')
map = folium.Map(location=[65,26], zoom_start=4, tiles='openstreetmap')
map.choropleth(geo_data=kunnat_geo,
data=df, # my dataset
columns=['Kunta', 'data'],
key_on='feature.properties.Name',
fill_color='OrRd', fill_opacity=0.7, line_opacity=0.2,
legend_name='Mielenterveyden kuntoutuskotien asiakkaat vuonna 2018',
smooth_factor=0)
marker_cluster = MarkerCluster().add_to(map)
for i in range(0,len(coords)):
folium.Marker([coords.iloc[i]['lat'], coords.iloc[i]['lng']], popup=coords.iloc[i]['data'],tooltip='Mielenterveyden kuntoutuskotien asiakkaat vuonna 2018').add_to(marker_cluster)
coords.head()
map.save('Choropleth.html')
map
编辑:解决了问题。 Folium 无法显示北欧字母 Ä、Ö 或 Å。不得不从我的数据中删除它们,现在可以了。
意识到我缺少某些城市的数据。发生这种情况是因为这些城市的名称中包含北欧字符,而 folium 无法显示它们。通过使用以下代码将所有北欧字符替换为英文字母(Ä = A,Ö = O 等)来修复它:
dictionary={'ä':'a','ö':'o','Ä':'A','å':'a'}
df.replace(dictionary, regex=True, inplace=True)
还必须在 geojson 文件中手动替换它们。