如何使用pysal或geopandas将两个地图并排绘制?

4

我希望将两张专题地图并排绘制以进行比较。我使用geopandas绘制地图,使用pysal从空间分析中生成地图。

3个回答

8
您可以使用matplotlib创建子图结构,然后使用geopandas / pysal将绘图添加到特定子图中:
import matplotlib.pyplot as plt

fig, axes = plt.subplots(ncols=2)
# add geopandas plot to left subplot
geodataframe.plot(..., ax=axes[0])
# add pysal plot to right subplot using `axes[1]`

1
我把“nrows”改成了“ncols”,然后它就可以工作了。我的意图是将它们并排绘制。谢谢。 - Oalvinegro
我已经尝试过设置figsize,但生成的图像仍然很小。请问有什么方法可以解决这个问题吗? - jimmy

5
为了将两个地理数据框并排展示,你可以这样编写代码:
fig, (ax1,ax2) = plt.subplots(nrows=1, ncols=2, figsize=(20, 16))
ax1 = geodataframe.plot(ax=ax1, column='obs', legend=True)
ax2 = geodataframe.plot(ax=ax2, column='pred', legend=True)

1
import folium
import folium.plugins

m = folium.plugins.DualMap(location=(52.1, 5.1), tiles='cartodbpositron', zoom_start=8)

fg_both = folium.FeatureGroup(name='markers_both').add_to(m)
fg_1 = folium.FeatureGroup(name='markers_1').add_to(m.m1)
fg_2 = folium.FeatureGroup(name='markers_2').add_to(m.m2)

icon_red = folium.Icon(color='red')
folium.Marker((52.0, 5.0), tooltip='both', icon=icon_red).add_to(fg_both)
folium.Marker((52.4, 5.0), tooltip='1').add_to(fg_1)
folium.Marker((52.0, 5.4), tooltip='2').add_to(fg_2)

folium.LayerControl(collapsed=False).add_to(m)
m

#输出

这里输入图片描述


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接