前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >看我画世界地图和中国地图,你也可以画

看我画世界地图和中国地图,你也可以画

作者头像
龙哥
发布2019-04-25 11:45:21
2.1K0
发布2019-04-25 11:45:21
举报
文章被收录于专栏:Python绿色通道

好了开始正文:

还记得中学课本里的一首现代诗歌吗?

乡愁 现代 · 余光中 小时候, 乡愁是一枚小小的邮票, 我在这头, 母亲在那头。 长大后, 乡愁是一张窄窄的船票, 我在这头, 新娘在那头。

中学时,当我们学到余光中的「乡愁」,可能我们当时并不能完全理解这首现代诗歌,随着我们年龄的增长,我们外出求学,毕业后奔赴北上广。那年少时的一枚邮票,那青年时的一张船票,随着科技的发展,如今就是一次视频聊天和火车票。

即将春节了,不管的你身在何方,都会回家和家人过一个团圆年。此时的你,身处地图的哪个角落?春节时会去到哪个角落呢?今天就用 Python 画一下世界地图和中国地图。

项目环境

语言:Python 3.6 编辑器:Pycharm

安装库

主要用到的库是 basemap 库,这个库是 matplotlib 库中一个用于在 Python 中绘制地图上的 2D 数据的工具包。

1、安装 geos 库:Python 的 basemap 库是建立在 geos 中的,所以得先安装 geos,cmd 命令下,定位到 pip 所在的文件夹,使用 pip 命令安装。

代码语言:javascript
复制
pip install geos

2、下载 pyproj 和 basemap 两个包的 whl 文件,下载地址如下,请下载合适的版本。

代码语言:javascript
复制
http://www.lfd.uci.edu/~gohlke/pythonlibs/

3、cmd 命令下先进入到上面下载的库的路径下,使用 pip 命令安装 pyproj 和 basemap 库。

代码语言:javascript
复制
pip install basemap-1.2.0-cp36-cp36m-win_amd64.whl

pip install pyproj-1.9.6-cp36-cp36m-win_amd64.whl

导入

代码语言:javascript
复制
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
from matplotlib.patches import Polygon

常见用法

代码语言:javascript
复制
map = Basemap()  # 新建一张世界地图
map.drawcoastlines() # 画出海岸线
plt.show()  # 打开窗口显示运行结果

世界地图

通过上面常见用法我们就可以勾勒出一个平面型的世界地图了。

效果图如下,平面图,黑白的,不美观。

优化下,把平面图投影成球形图,给大地和湖泊加上不同的颜色。

这样就会美观很多了

中国地图

接下来,我们创建地图时改一下投影方式,并加入 drawcountries 方法。

运行代码,中国地图便出现了。

这样我们只是看到中国的轮廓图,省与省之间的分界线没有显示出来,因为这是老外制作的库,中国省份的边界默认没有,这需要我们手动下载包,下载网站如下:

代码语言:javascript
复制
https://gadm.org/download_country_v3.html

下载 中国 China 和 中国台湾 Taiwan 的 Shapefile 文件,注意:不要忘了 Taiwan,因为:中国台湾是中国领土不可分割的一部分!

下载文件解压后用 readshapefile 方法读取下载的文件。

运行代码,效果图如下:

颜色区分

为了突出中国的地图,我们用红色来区分。我们把 facecolor 参数设置成 r,r 是 red 的简写。

同样,不要忘了把中国台湾也加上同样的颜色,中国台湾是中国领土不可分割的一部分!

运行代码后,就能看到中国地图了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-04-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python绿色通道 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 项目环境
  • 安装库
  • 导入
  • 常见用法
  • 世界地图
  • 中国地图
  • 颜色区分
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档