More Related Content
More from neuroassociates
More from neuroassociates (17)
[week11] R_ggmap, leaflet
- 5. 꿈꾸는데이터디자이너 시즌2
ggplot(asia,
aes(x = long, y = lat, group = group)) +
geom_polygon(fill = 'white', colour = 'black') +
coord_map() # metacator 투영법
20
30
40
50
90 110 130
long
lat
- 6. 꿈꾸는데이터디자이너 시즌2
ggplot(asia,
aes(x = long, y = lat, group = group)) +
geom_polygon(fill = 'white', colour = 'black') +
coord_map("polyconic") # polyconic 투영법
20
30
40
50
90 110 130
long
lat
- 15. 꿈꾸는데이터디자이너 시즌2
station_list = c('시청역', '을지로입구역', '을지로3가역',
'을지로4가역', '동대문역사문화공원역', '신당역', '상왕십리역',
'왕십리역', '한양대역', '뚝섬역', '성수역', '건대입구역', '구의역',
'강변역', '잠실나루역', '잠실역', '신천역', '종합운동장역', '삼성역',
'선릉역', '역삼역', '강남역', '2호선 교대역', '서초역', '방배역',
'사당역', '낙성대역', '서울대입구역', '봉천역', '신림역', '신대방역',
'구로디지털단지역', '대림역', '신도림역','문래역', '영등포구청역',
'당산역', '합정역', '홍대입구역', '신촌역', '이대역', '아현역',
'충정로역')
2호선 지하철역 목록
- 16. 꿈꾸는데이터디자이너 시즌2
# data.frame에 검색하려는 주소를 열로 저장한다
station_df = data.frame(station_list,
stringsAsFactors = FALSE)
# UTF-8로 인코딩을 변경한다
station_df$station_list = enc2utf8(station_df$station_list)
# mutate_geocode 함수를 이용해 좌표를 검색한다
station_lonlat = mutate_geocode(station_df,
station_list, source = 'google')
ggmap::mutate_geocode
- 17. 꿈꾸는데이터디자이너 시즌2
station_list
1 시청역
2 을지로입구역
3 을지로3가역
4 을지로4가역
5 동대문역사문화공원역
6 신당역
7 상왕십리역
8 왕십리역
9 한양대역
10 뚝섬역
ggmap::mutate_geocode
station_list lon lat
1 시청역 126.9771 37.56544
2 을지로입구역 126.9827 37.56606
3 을지로3가역 126.9926 37.56629
4 을지로4가역 126.9976 37.56661
5 동대문역사문화공원역
127.0092 37.56564
6 신당역 127.0195 37.56567
7 상왕십리역 127.0289 37.56450
8 왕십리역 127.0373 37.56198
9 한양대역 127.0437 37.55562
10 뚝섬역 127.0473 37.54724
- 19. 꿈꾸는데이터디자이너 시즌2
qmap('seoul', zoom = 11)
qmap('seoul', zoom = 11, color = 'bw')
qmap('seoul', zoom = 11, maptype = 'roadmap')
qmap('seoul', zoom = 11, maptype = 'satellite')
qmap('seoul', zoom = 11, maptype = 'hybrid')
지도 그리기 (google)
ggmap::qmap
- 21. 꿈꾸는데이터디자이너 시즌2
qmap('seoul', zoom = 11, source = 'stamen',
maptype = 'watercolor')
qmap('seoul', zoom = 11, source = 'stamen',
maptype = 'toner')
지도 그리기 (stamen design)
ggmap::qmap
- 23. 꿈꾸는데이터디자이너 시즌2
seoul_lonlat = unlist(
geocode('seoul', source='google'))
qmap(seoul_lonlat, zoom = 11,
source = 'stamen', maptype = 'toner')
특정 위도, 경도를 중심으로 지도 그리기
ggmap::qmap
- 24. 꿈꾸는데이터디자이너 시즌2
seoul_map <- qmap('Seoul', zoom = 11,
source = 'stamen', maptype = 'toner')
seoul_map +
geom_point(data = station_lonlat,
aes(x = lon, y = lat),
colour = 'green',
size = 4)
지도 위에 레이어 끼얹기
mapping with ggmap + ggplot2
- 26. 꿈꾸는데이터디자이너 시즌2
wifi_data = read.csv('wifi_data.csv',
stringsAsFactors = FALSE)
seoul_map +
geom_point(data = wifi_data, aes(x=lon, y=lat))+
facet_wrap(~div)
지도 위에 레이어 끼얹기
mapping with ggmap + ggplot2
- 28. 꿈꾸는데이터디자이너 시즌2
seoul_map +
geom_polygon(data = wifi_data,
aes(x=lon, y=lat, fill=..level..),
stat = 'density2d',
alpha = 0.3) +
scale_fill_gradient(low = '#C6DBEF',
high = '#08306B') +
facet_wrap(~div)
지도 위에 레이어 끼얹기
mapping with ggmap + ggplot2
- 33. 꿈꾸는데이터디자이너 시즌2
leaflet(wifi_data) %>%
setView(lng = seoul_lonlat[1],
lat = seoul_lonlat[2], zoom = 11) %>%
addProviderTiles('Stamen.Toner') %>%
addCircles(lng = ~lon, lat=~lat)
leaflet(wifi_data) %>%
setView(lng = seoul_lonlat [1],
lat = seoul_lonlat[2], zoom = 11) %>%
addProviderTiles('CartoDB.Positron') %>%
addCircles(lng = ~lon, lat=~lat)
지도 그리기(Third Party Tiles)
mapping with leaflet