一,basemap与其他工具比较
- Basemap: Basemap是 Python 可视化库 Matplotlib 下的一个工具包,主要功能是绘制二维地图,是Python空间数据可视化的重要手段。
- GMT:即Generic Mapping Tools,是地球科学最广泛使用的制图软件之一。目前GMT主要有三大版本:GMT4、GMT5和GMT6,GMT4已不再更新维护;GMT5已进入维护期,不再增加新功能,仅修复已知BUG;GMT6是GMT目前的最新版本,也是开发者在着重维护和更新的版本。GMT6几乎完全兼容GMT5的语法,且提供了一种更为简洁易用的新写法。除此之外,GMT 还为其他常用的编程语言提供了方便的接口,如gmtmex(matlab 接口)、GMT.jl(Julia接口)、pygmt(Python接口)。
- Matlab:Matlab是一个强大的数学软件,可以用于数据分析、图像处理、模拟仿真等各种领域,是工科非常常用的软件。
- 其他:如Grads、NCL(NCAR Command Language)等,更多用于气象界。
二,basemap与其他软件比较
优势:
- Python语法更加简介易懂,容易上手。比较起来,GMT语法跟鬼一样……
- 安装简单,占用空间小,启动迅速。Matlab我电脑没两分钟启动不起来……
- 可以和Python的各种库,如matplotlib、geopandas、shapely、arcpy等协同使用,一站式解决数据处理、绘图等问题
- Python使用人数多,社区活跃,遇到问题更好解决
劣势:
- Matlab是工科编程最常使用的工具,大量的算法都能直接找到Matlab源代码,与此相比,Python还需更多积累
- GMT是地球科学最常使用的绘图软件,绘制出的图形能比较容易满足期刊的要求。
三,basemap安装
1.安装geos模块,直接使用pip安装即可
pip install geos
2.安装pyproj模块,直接使用pip安装即可
pip install pyproj
3.先输入:换成清华源。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
再输入:
conda install basemap
中间会让你确认是否安装,输入y
,按下Enter
键,即可安装。
四. 设置环境变量
先将Anaconda安装目录下找到proj4的安装路径,我的是在:E:\Anaconda\pkgs\proj4-4.9.3-hfa6e2cd_8,然后打开这个文件夹,进入Library -> share 文件夹,将里面的文件全选并复制,粘贴到 E:\Anaconda\share\proj 这个文件夹下(如果Anaconda根目录下没有这个proj文件夹,就创建一个)。然后,设置环境变量,即在用户变量下新建一个就好了。
五,测试是否安装成功
打开Jupyter Notebook (Anaconda3)软件,输入:
from mpl_toolkits.basemap import Basemap
如果报错请认真查看下面说的原因:
直接原因是:系统找不到这个叫做PROJ_LIB的环境变量,所以报错了。
根本原因:调用basemap模块的时候会调用basemap所依赖的proj4模块,所以当时在anaconda上安装basemap模块的时候,可以看到相应的也安装了proj4这个模块。但是最坑的是,anaconda root下安装proj4的时候不会主动给你设置proj4模块的环境变量,所以就导致的现在这样的错误。
强烈推荐 <解决方案>
环境变量
六,代码验证
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
plt.figure(figsize=(10, 6))
m = Basemap() # 创建一个地图
m.drawcoastlines() # 画海岸线
plt.show() # 显示图像