一直在琢磨怎么在python中画出标准的地图,起码可以包含最基本的地图三要素,图例、比例尺和指北针,在空间计量和空间分析的有关社群和知乎上,并没有问到满意结果。实际上并不是并不是不能实现,Basemap就是这样一个专业的库,可以为python中的地图绘制提供很好地支持。那必须学一学!
Matplotlib中的Basemap它具有专业标准的地图绘制工具。它可以与matplotlib的一般绘图功能相结合,并在地图上绘制数据。Matplotlib的Basemap工具包是一个用于在Python中的地图上绘制2D数据的库。它在功能上类似于MATLAB地图工具箱,IDL地图工具,GrADS或通用地图工具。
那么这趟学习之旅首先从安装开始吧!
一、Basemap安装
(一)安装环境
Windows7+anaconda(python3.7版本)+whl文件
(二)下载whl文件
下载链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/
这上面很多Python库都可以下载,可以解决pip为收录的情况。
安装basemap,首先要安装其所依赖的pyproj库,然后再安装Basemap,可以一起下载。
我的python是3.7版本,因此下载对应的包。
(三)安装
将下载的whl文件放到相应文件夹,复制路径
在anaconda prompt中输入命令:
\SoftWare
看到successfully就安装好了
二、epsg未找到的情况处理
正当高兴时,我立马尝试使用Matplotlib底图工具包,但是在尝试导入时会遇到与epsg相关的FileNotFoundError。
---------------------------------------------------------------------------
几番重装未果,索性直接在github上找到basemap开源文件,复制epsg到报错文件路径下。
github链接:https://github.com/matplotlib/basemap/blob/master/lib/mpl_toolkits/basemap/data/epsg
github下载较慢,可以尝试通过github链接将文件导入码云下载,然后将epsg复制到/ anaconda3 / share / proj /路径下。
重新import,并运行程序,然后惊喜的情况出现了: