- 积分
- 593
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2023-4-8
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
做地图白化的时候接触了cnmaps这个库,非常好用!!!不用使用shp文件了,感谢作者~@clarmy 指路主页:http://bbs.06climate.com/home.ph ... ditional=removevlog
但是在画图的时候遇到了地图白化越界的问题,画框框不住填色。
家园里处理白化越界的方法也有,但其实还是回归了使用shp文件的方法。
因此求助作者,得到了回应,指路作者在GitHub的解答,希望能解决到这部分的疑惑:
https://github.com/cnmetlab/cnmaps/issues/97
作者在回答中给出的实例:
import matplotlib.pyplot as plt
import cartopy.crs as ccrs
from cnmaps import get_adm_maps, clip_contours_by_map, draw_maps, MapPolygon
from cnmaps.sample import load_temp
from shapely.geometry import Polygon
fig = plt.figure(figsize=(6, 5), dpi=300)
ax = fig.add_axes([0.1, 0.1, 0.8, 0.8], projection=ccrs.PlateCarree())
lons, lats, data = load_temp()
cs = ax.contourf(lons, lats, data)
boundary = MapPolygon(
[Polygon([[70, 55], [140, 55], [140, 40], [70, 40], [70, 55]])]
) & get_adm_maps(country="中华人民共和国", only_polygon=True, record="first")
draw_maps(get_adm_maps(country="中华人民共和国"), ax)
clip_contours_by_map(cs, boundary, ax)
ax.set_extent([70, 140, 40, 55], crs=ccrs.PlateCarree())
fig.savefig("./test.png", bbox_inches="tight")
|
|