SW/R

R : ggmap-데이터 크기를 지도에 표현 (개념 및 예제)

얇은생각 2019. 3. 9. 12:30
반응형

데이터의 크기를 지도에 표현

R 에서 재공하는 지진 발생 데이터(quakes)를 이용하여 지진 규모를 발생지역에 표시할 수 있습니다. 


theme은 x,y축 레이블을 보이지 않게합니다. 우선 지진이 난 지역을 표시해보도록 하겠습니다. 결과는 아래와 같이 나옵니다.  



library(ggmap)
library(ggplot2)

df <- head(quakes,100) # quakes information

cen <- c(mean(df$long), mean(df$lat)) # map location

gc <- data.frame(lon=df$long, lat=df$lat) # create data frame

gc$lon <- ifelse(gc$lon>180, -(360-gc$lon), gc$lon) # 경도를 넘는 경우 변환

gc

map <- get_googlemap(center=cen, # on the map
maptype="roadmap",
zoom=4,
marker=gc)

ggmap(map)+theme(axis.title.x=element_blank(), # x,y axis blank
axis.text.x=element_blank(),
axis.ticks.x=element_blank(),
axis.title.y=element_blank(),
axis.text.y=element_blank(),
axis.ticks.y=element_blank())


ggmap




이제 투명도를 조정해 지도에 표현해줍니다. 이전에 ggplot 산점도에 대해 포스팅했던 것을 참조해주세요. 결과는 아래와 같이 나옵니다. 맵에 데이터의 크기에 따라 그 강도를 표현해보았습니다. 사람들에게 데이터를 시각화하면 직관적으로 제공할 수 있겠죠?



map <- get_googlemap(center=cen,
maptype="roadmap",
zoom=5) # 지도 정보 담기

gmap <- ggmap(map) # 데이터 입력

gmap+geom_point(data=df, # 산점도 표현
aes(x=long,y=lat,size=mag), # 원의 크기를 mag로 표시
alpha=0.5) # 불투명도 표시


ggmap

반응형