#(1)安装R的google地图包
library(googleVis)
library(ggmap)
#(2)获取起点、终点及其中间站点的坐标
from = 'tiananmen, beijing' # 起点设为天安门
to = 'yiheyuan, beijing' # 终点设为颐和园
route.from = geocode(from) # 获取起点坐标
route.to = geocode(to) # 获取终点坐标
route.driving= route(from, to, mode = 'driving', structure = 'route') # 获取乘车路线站点数据(默认)
route.walking= route(from, to, mode = 'walking', structure = 'route') # 获取步行路线站点数据
route.driving2= data.frame(route.driving$lon, route.driving$lat) # 提取乘车路线站点坐标
route.walking2= data.frame(route.walking$lon, route.walking$lat) # 提取步行路线站点坐标
#(3)绘制标注从天安门广场到颐和园的路线的静态北京地图
# pdf("routemap1.pdf",family="GB1")
# 绘制乘车路线图;
map.driving = get_googlemap('beijingligongdaxue', zoom = 12,
maptype = 'roadmap',
markers = route.driving2,
path = route.driving2, scale = 2)
ggmap(map.driving, extent = 'panel') +
annotate("text",x=route.from[1,1],y=route.from[1,2],
label="天安门",col="red",fontface=2) +
annotate("text",x=route.to[1,1],y=route.to[1,2],
label="颐和园",col="red",fontface=2) +
labs(x="Longitude", y="Latitude",
title='天安门到颐和园乘车路线图')
# 绘制步行路线图
map.walking = get_googlemap('beijingligongdaxue', zoom = 12,
maptype='roadmap',
markers = route.walking2,
path = route.walking2, scale = 2)
ggmap(map.walking, extent = 'panel') +
annotate("text",x=route.from[1,1],y=route.from[1,2],
label="天安门",col="red",fontface=2) +
annotate("text",x=route.to[1,1],y=route.to[1,2],
label="颐和园",col="red",fontface=2) +
labs(x="Longitude", y="Latitude",
title='天安门到颐和园步行路线图')
# dev.off()
who = read.csv("D:\\Rworkspace\\WHO.csv", header = TRUE)
who = who[, c(1, 5)]
## 显示地图
gVisGeo = gvisGeoMap(who, locationvar = "Country", numvar = "Adult.literacy.rate....",
options = list(height = 500, width = 800, region = "world", dataMode = "regions",
showZoomOut = TRUE))
plot(gVisGeo)
在控制台上运行这段代码,在浏览器中会打开一幅效果如下图所示的动态图:当鼠标停留在一个国家上方时,该国的成人识字率数据就会显示出来。