【R】世界の地震情報をggplotで可視化
2019年12月14日
世界にも大きな地震がたくさんあります。アメリカの地質調査所(USGS)にて世界の地震の情報を公開しています。JSONでデータを取得できますので、取得したデータをggplotで可視化します。2016年10月1日~2017年10月1日に発生した地震を50件取得して世界地図に表示しています。
library(magrittr) library(httr) library(dplyr) base.url <- "http://earthquake.usgs.gov/fdsnws/event/1/" req <- paste0(base.url, "version") %>% GET() req %>% status_code() res <- paste0(base.url, "query") %>% GET(query = list(format = "geojson", starttime = "2016-10-01", endtime = "2017-10-01", limit = "50")) %>% content(as = "text", encoding = "UTF-8") res %>% substr(1, 50) library(rgdal) df.sp <- readOGR(res, "OGRGeoJSON", stringsAsFactors=FALSE ) isS4(df.sp) slotNames(df.sp) df.sp@data %>% glimpse() library(ggplot2) library(maps) world <- map_data("world") worldmap <- ggplot(world, aes(x=long, y=lat, group = group)) + geom_path() + scale_x_continuous(breaks = (-2:2) * 30) + scale_y_continuous(breaks = (-4:4) * 45) earthquake<- worldmap + geom_point(data = as.data.frame(df.sp), aes(x=coords.x1, y=coords.x2, group = magType, shape = magType, size = mag)) print(earthquake)
参考:Rによるスクレイピング入門 C&R研究所