用Python制作中国地图、地球平面图及球形图
2020-01-15 09:55
453 查看
绘制地图在python中主要用到的 basemap 库,这个库是 matplotlib 库中一个用于在 Python 中绘制地图上的 2D 数据的工具包。
首先安装库:
1、安装 geos 库:Python 的 basemap 库是建立在 geos 中的,所以得先安装 geos,cmd 命令下,定位到 pip 所在的文件夹,使用 pip 命令安装。
pip install geos
2.安装 pyproj、basemap 库:下载 pyproj 和 basemap 两个包的 whl 文件,使用 pip 命令安装 pyproj 和 basemap 库。
whl 文件下载地址如下:
http://www.lfd.uci.edu/~gohlke/pythonlibs/
找出与python版本对应的whl 文件下载,然后再cmd中进入到whl 文件的目录下进行pip安装
pip install pyproj-1.9.6-cp35-cp35m-win_amd64.whl pip install basemap-1.2.0-cp35-cp35m-win_amd64.whl
导入库:
import matplotlib.pyplot as plt from mpl_toolkits.basemap import Basemap from matplotlib.patches import Polygon
创建黑白色世界平面图:
map = Basemap()#新建一张世界地图 map.drawcoastlines()#画出海岸线 plt.show()#打开窗口显示运行结果
创建世界球形图并给大地和湖泊加上颜色:
plt.figure(figsize=(10,7))#定义图的大小 m = Basemap(projection='ortho',lat_0=0,lon_0=0)#创建世界地图并增加投影 m.drawmapboundary(fill_color='aqua')#给地球涂上蓝色 m.fillcontinents(color='coral',lake_color='aqua')#给大地和海洋涂上颜色 m.drawcoastlines()#画海岸线 plt.show()
创建中国地图:
下载 中国 China 和 台湾 Taiwan 的 Shapefile 文件,注意还需要在Country的下拉框中选择台湾
网址如下:https://gadm.org/download_country_v3.htm
下载文件解压后用 readshapefile 方法读取下载的文件。
plt.figure(figsize=(16, 7)) # 定义图的大小 m = Basemap(llcrnrlon=77, llcrnrlat=14, urcrnrlon=140, urcrnrlat=51, projection='lcc', lat_1=33, lat_2=45, lon_0=100) # 创建中国地图 m.drawcountries(linewidth=1.5) # 画出中国地图 m.readshapefile(r'C:\PyProject\learn\小技巧\地图\China\gadm36_CHN_1', 'states', drawbounds=True) m.readshapefile(r'C:\PyProject\learn\小技巧\地图\TaiWan\gadm36_TWN_1', 'taiwan', drawbounds=True) m.drawmapboundary(fill_color='aqua') # 给地球涂上蓝色 m.fillcontinents(color='coral', lake_color='aqua') # 给大陆和海洋分别涂上颜色 m.drawcoastlines() # 画海岸线 # 给中国加上鲜艳颜色 ax = plt.gca() for nshape, seg in enumerate(m.states): poly = Polygon(seg, facecolor='r') ax.add_patch(poly) # 台湾不要忘了 m.readshapefile('C:\PyProject\learn\小技巧\地图\TaiWan\gadm36_TWN_1', 'taiwan', drawbounds=True) for nshape, seg in enumerate(m.taiwan): poly = Polygon(seg, facecolor='r') ax.add_patch(poly) plt.show()
转载于:https://www.cnblogs.com/Estate-47/p/10444691.html
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- 使用highmaps制作中国地图
- 用echarts.js制作中国地图,点击对应的省市链接到指定页面
- NASA从太空发射激光,制作地球森林高度地图
- Python和Perl绘制中国北京跑步地图的方法
- Python + PyEcharts制作可视化数据地图
- d3js制作中国地图
- 用Python制作在地图上模拟瘟疫扩散的Gif图
- jvectormap制作多级地图(如:世界地图中包含中国带省的地图)
- Python cartopy 使用地图工具,给出经纬度,画出受影响的中国省份
- (So You’d Like To Make a Map Using Python) 所以你想用Python制作地图
- Python和Perl绘制中国北京跑步地图的方法
- 用echarts.js制作中国地图,点击对应的省市链接到指定页面
- 使用EChats制作中国地图,点击省份跳转到相应链接
- 使用echarts简单制作中国地图
- 结合Flex Builder和Flash CS4制作一个中国地图的应用(转)
- 结合Flex Builder和Flash CS4制作一个中国地图的应用
- python 画中国地图环境搭建(basemap)
- D3.js 制作中国地图 .net 公共基础类
- Python 将JSON格式文件进行数据可视化制作世界人口地图(十一)
- python绘制中国地图