티스토리 뷰
R에서 google map을 이용하여
신규 커피집을 표시할 수 있다.
먼저 라이브러리 ggmap 을 로드하고, register_google() 함수를 이용하여 발급받은 API를 등록한다. 구글에서 검색해서 개발자로 등록하고, 신용카드 정보 넣으면 API 키를 준다.
library('ggmap')
register_google(key='구글API')
공공데이터 data.go.kr 사이트에 가서 소상공인진흥공단에서 제공한 파일 중 하나를 다운 받았다.
https://www.data.go.kr/dataset/15012005/fileData.do
공공데이터포털
국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Dataset)와 Open API로 제공하는 사이트입니다.
www.data.go.kr
그 중에서 "커피"라고 표시되어 있는 관측치만 남겼다. 그리고 geocode() 함수를 이용하여 주소에 해당하는 위도/경도를 가져왔다(구글에 주소를 넣어주면 구글에서 위/경도를 준다).
market <- readxl::read_xlsx("markets.xlsx",
col_names = TRUE)
library(stringr)
coffee <- market[str_detect(market$INDS_MCLS_NM,"커피"),]
coffee <- coffee[complete.cases(coffee),]
geo_coffee <- geocode(coffee$LNO_ADR)
서울 지도를 하나 불러오고
map_seoul <- get_map(location = "seoul",
zoom=11,
source = "google",
maptype = "roadmap",
color = "bw")
거기에다가 앞에서 구한 커피 신규 개설업장을 표시하되, 밀도함수를 이용하여 표현하였다.
ggmap(map_seoul) +
stat_density_2d(data = geo_coffee,
aes(x = lon, y = lat,
fill =..level..,
alpha =..level..
),
geom = "polygon",
size = 2,
bins = 20) +
scale_fill_gradient(low='white', high = 'blue', guide=F) +
scale_alpha(range=c(0.02, 0.7), guide = F) +
theme_void() +
theme(legend.position = "none")
그러면 아래와 같은 그림을 얻을 수 있다. 2017년 여름 자료이던데, 강남과 홍대에 집중적으로 커피집이 열렸음을 알 수 있다.

'R' 카테고리의 다른 글
[R] 2020년 정부 예산 트리 맵(일반회계 기준) (0) | 2020.01.05 |
---|---|
[R] 구글 트렌드를 이용한 조국 검색 결과 (1) | 2019.10.19 |
[R] 시계열 끝에 값 표시하기 (0) | 2019.10.05 |
2019년 정부 예산 treemap 그리기 (2) | 2019.06.14 |
열린재정 open API 이용하여 parsing 하기 (3) | 2019.06.08 |