Google Maps API的使用
- Directions API
- Distance Matrix API
- Elevation API
- Geocoding API
- Geolocation API
- Time Zone API
- Roads API
- Places API
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
import googlemaps from datetime import datetimegmaps = googlemaps.Client(key='Add Your Key here')# Geocoding an address geocode_result = gmaps.geocode('1600 Amphitheatre Parkway, Mountain View, CA') print(geocode_result[0]['geometry']['location'])# Look up an address with reverse geocoding reverse_geocode_result = gmaps.reverse_geocode((40.714224, -73.961452)) print(reverse_geocode_result[0]['address_components'][1]['long_name'])
![](/assets/blank.gif)
import googlemaps from datetime import datetimegmaps = googlemaps.Client(key='Add Your Key here') # Request directions via public transit now = datetime.now() directions_result = gmaps.directions("Sydney Town Hall","Parramatta, NSW",mode="transit",departure_time=now) print(directions_result)
![](/assets/blank.gif)
![](/assets/blank.gif)
import googlemaps from datetime import datetime import os import csv import pandas as pd import matplotlib.pyplot as plt import math# 将已知的多个txt文件中的内容放到一个CSV文件下 def txt2Csv(dataPath, csvname):fileList = os.listdir(dataPath)csvFile = open(dataPath + '\\' + csvname, 'w+')writer = csv.writer(csvFile)for fileName in fileList:with open(dataPath + '\\' + fileName) as fileObj:lines = fileObj.readlines()for line in lines:line = line.split(',')line[-1] = line[-1][0:-1]writer.writerow((line))csvFile.close()# 根据经纬度获取两地之间的距离及花费的时间 def getDistanceDuration(key, path, csvName):gmaps = googlemaps.Client(key=key)df = pd.read_csv(path + '\\' + csvName)df.columns = ['id', 'time', 'longitude', 'latitude']durationList = []distanceList = []try:for i in range(1, 1000):now = datetime.now()# 调取google API的directions:directions_result = gmaps.directions((df.iloc[i, 3], df.iloc[i, 2]),(df.iloc[i+1, 3], df.iloc[i+1, 2]),mode="driving",departure_time=now)# 按照返回的格式,找出distance及duration,追加到列表中并返回distanceList.append(directions_result[0]['legs'][0]['distance']['value'])durationList.append(directions_result[0]['legs'][0]['duration']['value'])except googlemaps.exceptions._RetriableRequest:passreturn distanceList, durationListpath = 'D:\\Learnning\\python\\scrape\\taxiData\\T-drive Taxi Trajectories\\release\\taxi_log_2008_by_id' txt2Csv(path, 'geodata.csv')distanceList, durationList = getDistanceDuration('AIzaSyD8X6tJx6Ap5TVHlqwSso8iTwZfDWcFsOA', path, 'geodata.csv') # 对返回数据的单位做转换, 并使用math.ceil对数据向上取整 distanceList = [math.ceil(dis/1000) for dis in distanceList] durationList = [math.ceil(dis/60) for dis in durationList]totalDistance = 0 totalDuration = 0 # 计算总路程,并画出每段路程的距离在总路程中的占比: for distance in distanceList:totalDistance += distance distancePropo = [distance/totalDistance for distance in distanceList] plt.bar(distanceList, distancePropo) plt.title("Distance interval") plt.xlabel("Km") plt.ylabel("Proportion") plt.show()# 计算总时间,并画出每段路程花费的时间在总时间中的占比: for duration in durationList:totalDuration += duration durationPropo = [duration/totalDuration for duration in durationList] plt.bar(durationList, durationPropo) plt.title("Time interval") plt.xlabel("Min") plt.ylabel("Proportion") plt.show()
View Code
![](/assets/blank.gif)
按行驶距离分布:
转载于:https://www.cnblogs.com/dev-liu/p/GooglemapsAPI_python.html
Google Maps API的使用相关推荐
- Google Maps API v2 android版本开发 国内手机不支持google play Service相关问题解决--图文教程
Google Maps API v2 android版本开发 国内手机不支持google play Service相关问题解决--图文教程 参考文章: (1)Google Maps API v2 an ...
- Google Maps API编程资源大全
Google Maps API是Google自己推出编程API,可以让全世界对Google Maps有兴趣的程序设计师自行开发基于Google Maps的服务,建立自己的地图网站.以下是我在Googl ...
- Google Maps API 代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Google Maps API 简易教程(四)
Google Maps 类型 一.基本地图类型 Google Maps API支持一下map类型: .ROADMAP(正式的,默认为2D地图) .SATELLITE(逼真的地图) .HYBRID(逼真 ...
- Google Maps API V3: 通过邮编获取经纬度 Get Location (Latitude and Longitude) from Zip Cod
In this article I will explain with an example, how to get Location Coordinates i.e. Latitude and Lo ...
- Google Maps API 以某一经纬度为中心,以某一长度位半径画圆 Draw the radius of a circle...
直接看代码: <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" ...
- Google Maps API 申请方式变更为APIs Console, android手机申请方式
使用旧的key访问会弹出要你到:http://code.google.com/apis/maps/documentation/javascript/v2/introduction.html#0btai ...
- Google Maps API v3:如何删除所有标记?
本文翻译自:Google Maps API v3: How to remove all markers? In Google Maps API v2, if I wanted to remove al ...
- 如何使用Google Maps API禁用鼠标滚轮缩放
我正在使用Google Maps API(v3)在页面上绘制一些地图. 我想做的一件事是在地图上滚动鼠标滚轮时禁用缩放,但我不确定如何. 我已禁用scaleControl(即删除了缩放UI元素),但这 ...
- Google maps API开发(一)(转)
一.加载Google maps API <script type="text/javascript" src="http://ditu.google.com/map ...
最新文章
- 刚子扯个蛋 说下增、删、改、查
- linux写文件优化,Linux文件系统性能优化
- matlab画图(复数的直角坐标和极坐标)(-)
- BZOJ 3720 [洛谷P2137] : Gty的妹子树
- 台电u盘量产工具_简单几步,让U盘起死回生
- LeetCode 225. Implement Stack using Queues
- 数据结构 顺序串笔记
- CSS定位属性(position)
- Visual Studio 2017 - Windows应用程序打包成exe文件(2)- Advanced Installer
- Unity手游开发与实战
- python调用go并把结果传回go_从Go调用Python函数并获取函数返回值
- 进击的django【第一集】
- Linux内核移植操作步骤
- matlab sbus,WIRIS Pro Sc科研级机载双摄热红外成像仪
- 注册github账号详细中文版教程【精选】
- fastboot烧机
- beamer插入图片_在beamer中插入动画
- 基于springboot的医院体检预约管理系统
- favicon自动获取_wordpress网站友情链接页面使用DNSPod自动获取网站favicon图标教程...
- 完美融入云原生的无代码平台 iVX编辑器实战