太宰府に梅を見に行ったので記録を残す。
まずtwitterから位置情報をつけたtweetを抜き出す。
library("twitteR")
setup_twitter_oauth(options()$CONSUMER_KEY_AI,
options()$CONSUMER_SECRET_AI,
options()$ACCESS_TOKEN_AI,
options()$ACCESS_SECRET_AI)
## [1] "Using direct authentication"
Tw <- userTimeline("dichika", n=100)
Gps <- do.call("rbind", lapply(Tw,
function(x)data.frame(
text=x$text,
time=x$created,
lng=ifelse(length(x$longitude)>0, as.numeric(x$longitude), NA),
lat=ifelse(length(x$latitude)>0, as.numeric(x$latitude), NA)
))
)
Gps <- subset(Gps, complete.cases(Gps))
popupにtweetを組み込み、リンクをを有効にする。
Gps$text <- as.character(Gps$text)
Gps$url <- gsub("(http://.+[[:alnum:]])",
"<a href='\\1' target='_blank'>\\1</a>",
Gps$text)
Gps$url <- sprintf("<html><body>%s<p>%s</body></html>",
Gps$url,
as.character(Gps$time)
)
leafletパッケージで可視化する。 ほんとはpopup内に画像も表示したい。
library("leaflet")
leaflet() %>%
addPolylines(data=Gps,
lat= ~lat,
lng= ~lng) %>%
addCircles(data=Gps,
lat= ~lat,
lng= ~lng,
radius=5,
popup=Gps$url
) %>%
addTiles()