Python 学习之 2 —— Basemap地图绘制 (windows7安装指南+示例程序)
2019-02-19 18:16
666 查看
简介
Basemap扩展包是Matplotlib子包,负责地图绘制。
配置教程
windows7 + anaconda3 4.1.1 + python 3.5 + basemap + pyproj
- 先下载basemap 和 pyproj 的文件,在下面网址中:https://www.lfd.uci.edu/~gohlke/pythonlibs/
为了防止网页失效,我在我的CSDN下载频道中也上传了所需的两个文件,有需要的可以去下载:
https://download.csdn.net/download/lovetaozibaby/11037343
https://download.csdn.net/download/lovetaozibaby/11037332
ctrl+F寻找basemap,如下所示:
ctrl+F:Pyproj,如下所示
下载这两个文件,保存在任何文件夹都可以。
- 命令行模式cd到下载目录,执行:
pip install pyproj-1.9.6-cp35-cp35m-win_amd64.whl
pip install basemap-1.2.0-cp35-cp35m-win_amd64.whl
参考网址:
https://www.cnblogs.com/Fantinai/p/8733812.html
示例程序
目的为:给出南京市138个位置的经纬度,在地图中画出这些点的分布示意图。
(该代码里用到了一个.csv文件,文件共两列,一列表示经度,一列表示纬度)
# coding=utf-8 import csv import numpy as np import pandas as pd import matplotlib.pyplot as plt from mpl_toolkits.basemap import Basemap from matplotlib.patches import Polygon #画南京市整体图 def DrawPointMap(file_name): fig = plt.figure() ax1 = fig.add_axes([0.1,0.1,0.8,0.8])#[left,bottom,width,height] map = Basemap(projection='mill',lat_0=31,lon_0=110,\ llcrnrlat=31.2 ,urcrnrlat=32.7,llcrnrlon=118.3,urcrnrlon=119.4,\ ax=ax1,rsphere=6371200.,resolution='h',area_thresh=1000000) shp_info = map.readshapefile('CHN_adm/CHN_adm3','states',drawbounds=False) for info, shp in zip(map.states_info, map.states): proid = info['NAME_2'] if proid == 'Nanjing': poly = Polygon(shp,facecolor='w',edgecolor='k', lw=1.0, alpha=0.2)#注意设置透明度alpha,否则点会被地图覆盖 ax1.add_patch(poly) # 画横纵坐标 parallels = np.arange(30.6,33,1) map.drawparallels(parallels,labels=[1,0,0,0],fontsize=10) #parallels meridians = np.arange(117.35,130,1) map.drawmeridians(meridians,labels=[0,0,0,1],fontsize=10) #meridians # 读取文件 posi = pd.read_csv(file_name) lon = np.array(posi["LONGITUDE"][0:139])#获取经纬度坐标,一共有138个数据 lat = np.array(posi["LATITUDE"][0:139]) x,y = map(lon,lat) map.scatter(x, y, s=8, color = 'r',marker='o') #要标记的点的坐标、大小及颜色 map.drawmapboundary() #边界线 map.drawstates() map.drawcountries() plt.title('Nanjing')#标题 plt.savefig('Nanjing.png', dpi=100, bbox_inches='tight')#文件命名为Nanjing.png存储 plt.show() if __name__=='__main__': DrawPointMap("Info1.csv")
报错+修改
- numpy报错
- pandas报错
anaconda3 4.1.1 版本中对应的numpy 和 pandas的版本过低,配置好basemap后运行程序会报错,因此要对numpy和pandas升级,如下:
pip install numpy --upgrade
pip install pandas --upgrade
相关文章推荐
- python学习之Mac安装Scrapy指南教程
- Python学习笔记三(Python程序升级安装及其Tab自动补齐功能)
- 【利用python进行数据分析-学习记录】python-matplotlib中Basemap插件的安装
- 树莓派安装OpenCV后的示例小程序Python
- Python学习札记(二) python3.5安装 + (假装是)第一个Python程序
- 【python数据挖掘课程】二十二.Basemap地图包安装入门及基础知识讲解
- 网络游戏服务器开发::学习了两天python写了一个linux下自动安装程序的脚本
- Mac OS X 程序员利器 – Homebrew安装与使用以及python学习指南
- 深度学习入门之一:Windows10(64)+Anaconda3(Python3.5)+TensorFlow-Gpu1.4+CUDA8.0+cuDNN6安装详解及Pycharm配置指南
- 关于用python的SQLAlchemy访问数据库的学习记录,及SQLAlchemy的安装简介
- Socket编程指南及示例程序
- Windows7下安装程序出现NSIS ERROR的解决办法
- Socket编程指南及示例程序
- [学习笔记]使用py2exe打包python程序
- 精美绝伦的示例程序。写文章的人应该向人家学习。
- Socket编程指南及示例程序
- [转]Socket编程指南及示例程序
- 循序渐进学Python:安装、使用与运行程序
- j2me学习笔记【1】——helloworld程序示例
- windows7下如何调试安装ASP.net程序