我使用searchtwitter函数从twitter中提取了推文并创建了一个包含列"经度"的csv文件。和"纬度"我创建了一个变量" tweets"阅读csv文件。每条推文/行都有经度和纬度数据。我想将推文的位置绘制到新加坡的谷歌地图上。
如何在我使用PlotOnStaticMap函数创建的Google地图上绘制点?这是实现我的谷歌地图的代码:
sgmap<-GetMap(center="Singapore",zoom=11)
PlotOnStaticMap(sgmap)
points(tweets$longitude,tweets$latitude,col="red",cex=.6)
我也试过这段代码:
sgmap<-GetMap(center="Singapore",zoom=11)
PlotOnStaticMap(sgmap,cex=.6,col="red",FUN=points,add=F)
points(tweets$longitude,tweets$latitude,col="red",cex=.6)
和
sgmap<-GetMap(center=c(1.352083,103.8198),zoom=11,destfile="map.png",maptype="satellite")
PlotOnStaticMap(lat=tweets$latitude,lon=tweets$longitude,zoom=11,cex=.6,col="red",FUN=points)
答案 0 :(得分:1)
以下是使用ggmap
和ggplot2
执行此任务的另一种方法。您使用ggmap
下载地图,然后使用geom_point
中的ggplot2
在地图上绘制数据点。
library(ggmap)
library(ggplot2)
sing <- get_map(location = "singapore", color = "bw",
zoom = 11, maptype = "toner", source = "google")
# This is a pseudo tweets data frame including long and lat only
set.seed(12)
foo <- data.frame(long = runif(300, 103.68, 104),
lat = runif(300, 1.3, 1.42))
ggmap(sing) +
geom_point(data = foo, aes(x = long, y = lat), color = "red")