图1 2 在geopandas中叠加在线地图 我们需要配合contextily这个第三方库来辅助geopandas叠加在线地图,在geopandas已经被正确安装的情况下,使用pip install contextily 或conda install contextily安装contextily。 从下面这个小例子出发: import geopandas as gpd import contextily as ctx import matplotlib.pyplot as plt cq = gpd.read_file 在稍事等待之后(如果没有“特殊”的上网技巧,可能要多等一段时间),我们的底图便自动获取拼接完毕,之后直接导出图像文件即可,是不是非常的方便~ 在掌握了geopandas+contextily相互配合叠加在线底图之后
图1 2 在geopandas中叠加在线地图 我们需要配合contextily这个第三方库来辅助geopandas叠加在线地图,在geopandas已经被正确安装的情况下,使用pip install contextily或conda install contextily安装contextily。 从下面这个小例子出发: import geopandas as gpd import contextily as ctx import matplotlib.pyplot as plt cq = gpd.read_file 在稍事等待之后(如果没有“特殊”的上网技巧,可能要多等一段时间),我们的底图便自动获取拼接完毕,之后直接导出图像文件即可,是不是非常的方便~ 在掌握了geopandas+contextily相互配合叠加在线底图之后
图1 2 在geopandas中叠加在线地图 我们需要配合contextily这个第三方库来辅助geopandas叠加在线地图,在geopandas已经被正确安装的情况下,使用pip install contextily 或conda install contextily安装contextily。 从下面这个小例子出发: import geopandas as gpd import contextily as ctx import matplotlib.pyplot as plt cq = gpd.read_file 在稍事等待之后(如果没有“特殊”的上网技巧,可能要多等一段时间),我们的底图便自动获取拼接完毕,之后直接导出图像文件即可,是不是非常的方便~ 在掌握了geopandas+contextily相互配合叠加在线底图之后
already satisfied: seaborn in /opt/conda/lib/python3.9/site-packages (from geoplot) (0.11.2) Collecting contextily mirrors.ustc.edu.cn/pypi/packages/fb/46/07a029b73f9a5c7bbf9b538e6441c42014a448f335a1cc780616f2594bad/contextily (1.3.2) Requirement already satisfied: xyzservices in /opt/conda/lib/python3.9/site-packages (from contextily 25hRequirement already satisfied: pillow in /opt/conda/lib/python3.9/site-packages (from contextily>= , geoplot Successfully installed contextily-1.6.2 geographiclib-2.0 geoplot-0.5.1 geopy-2.4.1 mercantile
contextily:用于添加背景地图。pip install geopandas matplotlib shapely fiona contextily三、常见问题及解决方法1. 解决方案:使用contextily添加背景地图。 import matplotlib.pyplot as pltimport contextily as ctxfig, ax = plt.subplots(figsize=(10, 10))gdf.plot
使用contextily库可以使地理空间数据可视化更加生动、直观,同时可以提供更多的地理信息。 contextily库的主要功能包括: 从Web地图提供商获取地图图层 将地图图层与地理空间数据集合并 使用Matplotlib或Bokeh绘制地图 本文主要介绍contextily简单使用,contextily 具体使用可参考其官方文档:contextily-doc。 contextily库中基于add_basemap函数在地图上添加背景地图。 contextily-doc 高德谷歌腾讯天地图地图瓦片url 在geopandas中叠加在线地图
08 地理空间点图表 import geopandas import pandas_alive import contextily gdf = geopandas.read_file('data/nsw-covid19 09 多边形地理图表 import geopandas import pandas_alive import contextily gdf = geopandas.read_file('data/italy-covid-region.gpkg examples/example-geo-polygon-chart.gif', basemap_format={'source': contextily.providers.Stamen.Terrain COVID可视化 def nsw(): import geopandas import pandas as pd import pandas_alive import contextily COVID可视化 def italy(): import geopandas import pandas as pd import pandas_alive import contextily
interpolate_period=True, period_length=500, dpi=100 ) 08 地理空间点图表 import geopandas import pandas_alive import contextily }) 09 多边形地理图表 import geopandas import pandas_alive import contextily gdf = geopandas.read_file('data examples/example-geo-polygon-chart.gif', basemap_format={'source': contextily.providers.Stamen.Terrain COVID可视化 def nsw(): import geopandas import pandas as pd import pandas_alive import contextily COVID可视化 def italy(): import geopandas import pandas as pd import pandas_alive import contextily
map_chart = gdf.plot_animated(filename='examples/example-geo-point-chart.gif',basemap_format={'source':contextily.providers.Stamen.Terrain map_chart = gdf.plot_animated(filename='examples/example-geo-polygon-chart.gif',basemap_format={'source':contextily.providers.Stamen.Terrain , geometry=cases_gdf.geometry)gdf = cases_gdfmap_chart = gdf.plot_animated(basemap_format={'source':contextily.providers.Stamen.Terrain
安装所需Python库在Cloud Studio的终端中运行以下命令,安装项目所需的Python库:pip install pandas geopandas matplotlib contextily import pandas as pdimport geopandas as gpdimport matplotlib.pyplot as pltimport contextily as ctxdef Python环境和库:sudo apt updatesudo apt install python3-pippip3 install flask pandas geopandas matplotlib contextily
openwhatevermap.xyz/#3/-60.50/167.87 上点击自己感兴趣的地图样式: 图4 将对应的url和自定义的attribution传入webplot()中: 图5 图6 你也可以利用下面的方式查看contextily
图6 你也可以利用下面的方式查看contextily中所有内置的底图参数,从中选择你心仪的底图: ? 图7
我们来简单看看创建出的网格是什么样子的,配合contextily添加上在线底图: import matplotlib.pyplot as plt import contextily as ctx fig
我们来简单看看创建出的网格是什么样子的,配合contextily添加上在线底图: import matplotlib.pyplot as plt import contextily as ctx fig
geopandas as gpd import matplotlib.pyplot as plt import matplotlib.animation as animation import contextily
import contextily as ctx chengdu = chengdu.to_crs(from_epsg(3857)) area1 = area1.to_crs(from_epsg(3857
geopandas as gpd import matplotlib.pyplot as plt import matplotlib.animation as animation import contextily