网站定制开发是什么,建设部网站官网 下载规范,甘肃网站seo哪家公司好,网站建设单位排名文章目录 添加特征add_feature区域截取 添加特征
cartopy中最基础的地图绘制函数是coastlines#xff0c;即海岸线线条图#xff0c;这很复合我们的绘图直觉#xff0c;毕竟陆地和海洋的边缘#xff0c;是最清晰的地理特征。而在此之上#xff0c;还可以通过add_feature函… 文章目录 添加特征add_feature区域截取 添加特征
cartopy中最基础的地图绘制函数是coastlines即海岸线线条图这很复合我们的绘图直觉毕竟陆地和海洋的边缘是最清晰的地理特征。而在此之上还可以通过add_feature函数为当前地图添加各种特征。
add_feature可选特征有如下六种均被封装在cartopy.feature中
BORDERSCOASTLINELAKESLANDOCEANRIVERS陆地国界海岸线湖泊岛屿海洋河流
下面先展示一下这六种地图的区别
import matplotlib.pyplot as plt###引入库包
import cartopy.crs as ccrs
from cartopy.feature import *proj ccrs.PlateCarree()feaDct {BORDERS:BORDERS,COASTLINE:COASTLINE,LAKES:LAKES,LAND:LAND,OCEAN:OCEAN,RIVERS:RIVERS
}fig plt.figure()
for i,key in enumerate(feaDct, 1):ax fig.add_subplot(2,3,i,projectionproj)ax.add_feature(feaDct[key])plt.title(key)plt.show()效果如下可见这些东西分开之后并不好看最起码国界线应该和海岸线放在一起才能正确显示出世界上的各个国家。 add_feature
上面这些大写字母定义的常量均属NaturalEarthFeature对象这些对象仅规范了线条或区域但并未对其进行可视化设置而add_feature则提供了定制图像的功能。
下面对这些特征稍加定制并将其在同一坐标系中进行绘制
fig plt.figure()
ax fig.add_subplot(projectionccrs.PlateCarree())
ax.add_feature(LAND)
ax.add_feature(COASTLINE,lw 0.3)
ax.add_feature(RIVERS, colorblue, lw 0.5)
ax.add_feature(LAKES, colorblue, alpha0.5)
ax.add_feature(OCEAN)
plt.show()区域截取
很多情况下我们只需要看某个局部的地图就可以了为此克通过set_extent来对数据进行截取。下面下面绘制一下非洲地图
fig plt.figure()
ax fig.add_subplot(1, 1, 1, projectionccrs.PlateCarree())
ax.set_extent([-20, 60, -40, 40], crsccrs.PlateCarree())ax.add_feature(LAND)
ax.add_feature(OCEAN)
ax.add_feature(COASTLINE)
ax.add_feature(BORDERS, linestyle:)
ax.add_feature(LAKES, alpha0.5)
ax.add_feature(RIVERS, colorblue)plt.show()