python Basemap加载本地shp文件并绘制地图
时间: 2024-06-11 10:10:18 浏览: 198
首先需要安装Basemap库,可以使用pip命令进行安装:
```
pip install basemap
```
然后,需要准备本地shp文件。可以在网上下载或自己制作。本示例中使用的是中国省份的shp文件。
接下来,可以使用Basemap库加载shp文件并绘制地图。示例代码如下:
``` python
from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
# 创建Basemap对象
m = Basemap(llcrnrlon=73,llcrnrlat=18,urcrnrlon=135,urcrnrlat=53,projection='lcc',lat_1=33,lat_2=45,lon_0=100)
# 加载shp文件
m.readshapefile('./china', 'province')
# 绘制地图
fig = plt.figure(figsize=(8, 6), dpi=100)
ax = fig.add_subplot(111)
m.drawcoastlines()
m.drawcountries()
m.drawlakes()
m.drawrivers()
m.drawmapboundary()
# 显示图像
plt.show()
```
解释一下代码:
- 第1行导入Basemap库;
- 第2行导入matplotlib.pyplot库;
- 第4行创建Basemap对象,设置地图范围和投影方式;
- 第7行加载shp文件,'./china'是shp文件的路径,'province'是自定义的名称;
- 第10~15行绘制地图,包括海岸线、国界线、湖泊、河流和地图边界;
- 最后一行显示图像。
运行代码,可以看到绘制出的中国地图。
阅读全文