Python 给定的经纬度标注在地图上的实现方法

yipeiwu_com6年前Python基础

博主最近发现了python中一个好玩的包叫basemap,使用这个包可以绘制地图。值得说一下的是,basemap还没有pip检索,因此不能直接使用pip install basemap,来安装这个包。所以需要自己把下面两个包自行下载,然后在该目录下使用pip安装。

pyproj-1.9.5.1-cp36-cp36m-win_amd64.whl
basemap-1.1.0-cp36-cp36m-win_amd64.whl

先上个效果图,可以发现这个工具包还是很强大的,下面介绍下怎么在地图上标注出经纬度的地点。

整个画图流程分为两部分,第一部分是绘制一个世界地图,代码如下:

from mpl_toolkits.basemap import Basemap
 
m = Basemap()     # 实例化一个map
m.drawcoastlines()  # 画海岸线
m.drawmapboundary(fill_color='white')  
m.fillcontinents(color='white',lake_color='white') # 画大洲,颜色填充为白色
 
parallels = np.arange(-90., 90., 10.)  # 这两行画纬度,范围为[-90,90]间隔为10
m.drawparallels(parallels,labels=[False, True, True, False])
meridians = np.arange(-180., 180., 20.)  # 这两行画经度,范围为[-180,180]间隔为10
m.drawmeridians(meridians,labels=[True, False, False, True])

第二部分是标注出经纬度所在的地点,这部分比第一步简单多了,直接用scatter()方法就可以了,代码如下:

lon, lat = m(lon, lat)  # lon, lat为给定的经纬度,可以使单个的,也可以是列表
m.scatter(lon, lat, s=100)# 标注出所在的点,s为点的大小,还可以选择点的性状和颜色等属性
plt.show()

以上这篇Python 给定的经纬度标注在地图上的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中threading超线程用法实例分析

本文实例讲述了python中threading超线程用法。分享给大家供大家参考。具体分析如下: threading基于Java的线程模型设计。锁(Lock)和条件变量(Condition...

python获取豆瓣电影简介代码分享

复制代码 代码如下:#!/usr/bin/env python#coding:utf-8import re,sysimport urllibfrom bs4 import Beautif...

python3利用venv配置虚拟环境及过程中的小问题小结

python3利用venv配置虚拟环境及过程中的小问题小结

在利用python进行flask等开发过程中经常需要配置虚拟环境以方便针对不同的项目需求配置不同的生产环境。在python3.3之前,需要利用virtualenv等工具来实现python...

pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)

pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)

本机中原pyinstaller版本为3.5版本,本打算通过 pip install --upgrade pyinstaller进行升级,竟然报错,后面卸载再重新安装也一样报错,没办法看来...

举例讲解Linux系统下Python调用系统Shell的方法

时候难免需要直接调用Shell命令来完成一些比较简单的操作,比如mount一个文件系统之类的。那么我们使用Python如何调用Linux的Shell命令?下面来介绍几种常用的方法: 1....