zoukankan      html  css  js  c++  java
  • basemap的安装(附网盘链接分享)

    查看所需版本

    首先打开cmd,输入以下命令:
    python -m pip debug --verbose
    得到的结果如下:

    WARNING: This command is only meant for debugging. Do not use this with automation for parsing and getting these details, since the output and options of this command may change without notice.
    pip version: pip 20.0.2 from C:Users12345anaconda3libsite-packagespip (python 3.7)
    sys.version: 3.7.6 (default, Jan  8 2020, 20:23:39) [MSC v.1916 64 bit (AMD64)]
    sys.executable: C:Users12345anaconda3python.exe
    sys.getdefaultencoding: utf-8
    sys.getfilesystemencoding: utf-8
    locale.getpreferredencoding: cp936
    sys.platform: win32
    sys.implementation:
      name: cpython
    'cert' config value: Not specified
    REQUESTS_CA_BUNDLE: None
    CURL_CA_BUNDLE: None
    pip._vendor.certifi.where(): C:Users12345anaconda3libsite-packagespip\_vendorcertificacert.pem
    Compatible tags: 27
      cp37-cp37m-win_amd64
      cp37-abi3-win_amd64
      cp37-none-win_amd64
      cp36-abi3-win_amd64
      cp35-abi3-win_amd64
      cp34-abi3-win_amd64
      cp33-abi3-win_amd64
      cp32-abi3-win_amd64
      py37-none-win_amd64
      py3-none-win_amd64
      py36-none-win_amd64
      py35-none-win_amd64
      py34-none-win_amd64
      py33-none-win_amd64
      py32-none-win_amd64
      py31-none-win_amd64
      py30-none-win_amd64
      cp37-none-any
      py37-none-any
      py3-none-any
      py36-none-any
      py35-none-any
      py34-none-any
      py33-none-any
      py32-none-any
      py31-none-any
      py30-none-any
    

    从中可以看出,我们需要的是Python3.7对应的basemap
    官网地址为:
    https://www.lfd.uci.edu/~gohlke/pythonlibs/
    可以通过Ctrl+F,搜索页面中的basemap,找到对应的版本,Python3.7对应的是cp37,然后通过python -m pip debug --verbose命令得知,应该下载cp37-cp37m-win_amd64版本

    另外,同样的方法,搜索pyproj,

    下载所需的文件

    需要下载的两个东西分别是basemap‑1.2.2‑cp37‑cp37m‑win_amd64.whlpyproj‑2.6.1.post1‑cp37‑cp37m‑win_amd64.whl
    反正我通过官网是下载不了的,

    历经千辛万苦,我找到了Python3.7和Python3.9版本对应的两个文件
    还有一个Python3.6的,不过对应的basemap的版本不是最新版的,可能用不了
    链接:https://pan.baidu.com/s/1PwBI-Zcf33Xk3rZUMwy45Q
    提取码:cyx6

    安装

    我建议将这两个文件和其他Python库放在一起,比如我把它拷贝到C:Users12345anaconda3Libsite-packages目录下,当然这不是必要的。
    你可以在cmd中通过cd命令进入这两个文件所在的路径,也可以直接在那个文件夹的左上方输入cmd

    然后依次输入以下指令
    pip install pyproj-2.4.2.post1-cp37-cp37m-win_amd64.whl

    pip install basemap-1.2.2-cp37-cp37m-win_amd64.whl

    测试

    安装完成后,打开pycharm
    创建一个test.py文件
    测试代码:
    例1

    # 首先导入basemap和matplotlib两个包,两者都是必要的。
    from mpl_toolkits.basemap import Basemap
    import matplotlib.pyplot as plt
    # 新建第一个地图
    map = Basemap()
    # 在使用 Basemap 类创建地图时具有许多选项。
    # 在没有传递任何选项的 情况下,地图具有以经度 =0 和纬度 = 0 为中心的 Plate Carrée 投影(等距圆柱投影)。
    
    # 绘制海岸线
    map.drawcoastlines()
    # 如果使用单独的python程序(.py文件),需要下面这句话才能看到图
    plt.show()
    


    例2

    import numpy as np
    import matplotlib.pyplot as plt
    from mpl_toolkits.basemap import Basemap
    
    #运用 Basemap 函数我们可以在绘图区域中绘制地理信息相关的图像,当参数 projection 的值为 'ortho' #时,我们将得到一个如下所示的地球仪截面:
    
    plt.figure(figsize=(8, 8))
    m = Basemap(projection='ortho', resolution=None, lat_0=50, lon_0=-100)
    m.bluemarble(scale=0.5)
    
    plt.show()
    


    例3

    # 将参数 projection 的值设置为 'lcc' 时,我们可以通过经纬度设置来得到某一区域的局部地图:
    import numpy as np
    import matplotlib.pyplot as plt
    from mpl_toolkits.basemap import Basemap
    
    fig = plt.figure(figsize=(8, 8))
    m = Basemap(projection='lcc', resolution=None,
    width=8E6, height=8E6,
    lat_0=45, lon_0=-100,)
    m.etopo(scale=0.5, alpha=0.5)
    
    # 将经纬度映射为 (x, y) 坐标,用于绘制图像
    x, y = m(-122.3, 47.6)
    plt.plot(x, y, 'ok', markersize=5)
    plt.text(x, y, ' Seattle', fontsize=12)
    plt.show()
    

  • 相关阅读:
    Visual C++ 2010 SP1 x86&x64
    MVC拦截
    自定义HTTP消息拦截
    转mysql半主从同步
    mysql主从搭建之诡异事件
    snapshot相关
    分布式系统唯一ID生成方案汇总
    mysql监控利器mysqlmtop部署安装
    mysql日常运维
    MySQL索引背后的数据结构及算法原理
  • 原文地址:https://www.cnblogs.com/cyx-b/p/13824001.html
Copyright © 2011-2022 走看看