geopandas - GDF.simplify 弄乱了几何图形
问题描述
我正在尝试在地图上绘制流域。为了减小生成的矢量图形的大小,我正在应用GeoSeries.simplify()
.
import cartopy
import cartopy.crs as ccrs
import matplotlib.pyplot as plt
import geopandas as gpd
# %%% Earth
fig = plt.figure()
latlon_proj = ccrs.PlateCarree()
axis_proj = ccrs.Orthographic()
ax = plt.axes(
projection=axis_proj
)
# %%% Major River Basins
mrb_basins = gpd.read_file('mrb_basins.json') # 520 entries
mrb_basins['geometry'] = mrb_basins['geometry'].simplify(0.1)
for shape in mrb_basins['geometry']:
feat = cartopy.feature.ShapelyFeature(
[shape],
latlon_proj,
facecolor='red',
)
ax.add_feature(feat)
mrb_basins.plot()
问题是,生成的地球地图完全被红色形状覆盖。
如果我删除该行,情况并非如此mrb_basins['geometry'] = mrb_basins['geometry'].simplify(0.1)
。
如何在保持完整性的同时简化几何?
主要流域的数据集可在此处获得。
解决方案
推荐阅读
- python - 如何导入多个 dat 文件并操作每个文件的数据?
- angular - Angular如何在应用程序根目录之外显示内容
- javascript - 在 Javascript 中包含 NaN 时如何评估比较?
- android - AWS Cognito 身份池登录和持久性
- kubernetes - k8s 中的污点
- c++ - 如何打印非静态方法地址?
- react-native - 带有 redux 的 Stacknavigator,在 redux 中没有导航道具
- asp.net-mvc - 用于抛出异常 System.Web.Mvc.WebViewPage 的下拉列表
.Model.get 返回 null - c - 多线程与大 CPU 的多处理
- r - 了解傅里叶的季节性