互动情节 geopandas 不显示

interactive plot geopandas doesn't show

我从这个网站获得了这段代码: https://geopandas.org/en/stable/docs/user_guide/interactive_mapping.html

import geopandas as gpd
import matplotlib.pyplot as plt

world_filepath = gpd.datasets.get_path('naturalearth_lowres')
world = gpd.read_file(world_filepath)
print(world.head())

world.explore(column='pop_est',cmap='Set2')

plt.show()

我尝试 运行 代码,geodataframe 数据已打印但未显示任何图。 我错过了什么?

谢谢。

world.explore(column='pop_est',cmap='Set2') 应该 return 并显示 folium 地图对象,因此您不需要 plt.show() 作为底部。

此外,由于您使用的是 IDE(不是 jupyter),我们需要将地图写入磁盘然后在浏览器中打开它。

尝试

import geopandas as gpd
import webbrowser
import os

world_filepath = gpd.datasets.get_path('naturalearth_lowres')
world = gpd.read_file(world_filepath)
print(world.head())

# world.explore() returns a folium map
m = world.explore(column='pop_est',cmap='Set2')

# and then we write the map to disk
m.save('my_map.html')

# then open it
webbrowser.open('file://' + os.path.realpath('my_map.html'))

  • export() 创建一个 folium 对象,而不是 matplotlib
  • jupyter 中仅将 m 作为代码单元格中的最后一项
  • 在其他环境中,您可以另存为 HTML 并在浏览器中启动
import geopandas as gpd
import webbrowser
from pathlib import Path

world_filepath = gpd.datasets.get_path('naturalearth_lowres')
world = gpd.read_file(world_filepath)
print(world.head())

m = world.explore(column='pop_est',cmap='Set2')

f = Path.cwd().joinpath("map.html")
m.save(str(f))
webbrowser.open("file://" + str(f))