• Anaconda和basemap的安装和使用


    • 说在前面

        在使用basemap的时候走了很多的弯路,正确的姿势应该是在Anaconda下面安装basemap,如果使用原生的python的话,尤其是多个python版本共存的情况,是很难把basemap安装成功的。

        Anaconda是一个用于科学计算的Python发行版,支持Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。也就是这个里面包含了python,各种包,包管理工具等等。

    • win7下Anaconda和basemap的安装和使用
      • 安装请看下面的这个博客:(我下载的是python3.7的安装包,477M的安装包只需要不到10分钟就下载完了)

                https://blog.csdn.net/weixin_43715458/article/details/100096496

                下载的安装包的名称叫 Anaconda3-2020.02-Windows-x86_64.exe 。

      • 当在windows下面的Anaconda的命令行中运行 conda install 包名称 时,如果出现Collecting package metadata (current_repodata.json): failed的错误提示,可以按照下面的方式来解决掉:

                把路径“Anaconda3/Library/bin ”下面的文件复制到路径“Anaconda3/DLLs”下 :

                libcrypto-1_1-x64.dll

                libssl-1_1-x64.dll

      • 安全起见,把包都更新一遍 conda upgrade –all
      • 安装 basemap

                conda install basemap

                这里安装的版本是 basemap-1.2.1

      • 写一个脚本basemaptest.py如下,在Anaconda Prompt中 执行python basemaptest.py

                       注意:这个脚本只能在 basemap-1.2.1,上可以正常显示,basemap每个版本之间变化非常大,其他版本有可能编译不过。

                       frommpl_toolkits.basemapimportBasemap

                       importmatplotlib.pyplotasplt

                       #plt.figure(figsize=(16,8))

                       m=Basemap(llcrnrlon=77,llcrnrlat=14,urcrnrlon=140,urcrnrlat=51,projection='lcc',lat_1=33,lat_2=45,lon_0=100)

                       #m=Basemap(llcrnrlon=73,llcrnrlat=18,urcrnrlon=135,urcrnrlat=53)

                       m.drawcountries(linewidth=1.5)

                       m.drawcoastlines()

                       plt.show()

     

      • 可以正常的显示出下面的窗口。

                      clip_image001

    • ubuntu16下Anaconda和basemap的安装和使用
      • 安装包的下载

                  和windows的安装包一起下载的,名称叫 Anaconda3-2020.02-Linux-x86_64.sh, 大小是534M,也是10分钟内就下载完了。下载的版本是python3.7

                  参考博客:https://blog.csdn.net/ITBigGod/article/details/85690257

      • 按照上面的博客把Anaconda3安装好后,我的python并没有使用Anaconda3下的python,还是使用的我之前的安装的原生的python3.8,把软连接建一下就行了。

                  cd /usr/bin/

                  rm python

                  ln -s /root/anaconda3/bin/python /usr/bin/python

                  ln -s /root/anaconda3/bin/conda /usr/bin/conda

                  建立好软连接后,再次在shell中查询python版本、conda版本、pip版本。显示如下,就是正常了的

                 clip_image002

      • 安全起见,把包都更新一遍 conda upgrade –all
      • 安装 basemap

                 conda install basemap

                  这里安装的版本是 basemap-1.2.0,同时安装的windows安装的是1.2.1。

      • python basemaptest.py,执行上面的脚本。

                clip_image003

                错误原因:

                  Anaconda没有自动配置环境变量PROJ_LIB,而basemap的__init__.py文件中epsgf的设置代码如下,因此会报错

                     clip_image004

                  解决方法:

                 找到“epsg”的相应位置,这个文件在我的仿真机器上面的位置是 /root/anaconda3/share/proj

                设置环境变量:

                vim /etc/profile

                export PROJ_LIB=/root/anaconda3/share/proj:$PROJ_LIB

               重启虚拟机

      • ok,图形画出来了。

                 clip_image005

  • 相关阅读:
    HTML5
    js实现查找字符串中最多的字符的个数
    get和post的区别
    第十七篇 类的特殊成员
    第十八篇 面向对象修饰符
    MariaDB+Keepalived双主高可用配置MySQL-HA
    linux命令详解——crontab
    Java的内存泄漏
    jvm监控工具jconsole进行远程监控配置
    loadrunner执行场景时报Error -27040: Data Format Extension: Init: Internal error问题解决
  • 原文地址:https://www.cnblogs.com/matthew-2013/p/13366476.html
Copyright © 2020-2023  润新知