한 달 간 유럽으로 여행을 갈 예정입니다. 여행때 방문할 도시와 기간, 경로 등을 데이터로 만들고 원과 원의 크기, 선을 사용하여 지도 위에 표현하였습니다.
데이터 시각화를 진행한 과정은 다음과 같습니다.
데이터셋을 직접 만들었습니다: 도시(city), 위도(lat), 경도(lon), 체류일(day)
방문 도시는 베를린, 암스테르담, 브뤼셀, 파리, 취리히 순으로 정리하였습니다.
각 위도와 경도 정보는 구글 지도를 참고하였습니다.
각 도시별 머무는 체류일은 베를린 1일, 암스테르담 3일, 브뤼셀 2일, 파리 15일, 취리히 10일으로 지정했습니다.
체류일에 따라 원의 면적을 설정하였습니다. (ex. radius=~days*3000)
** 시각화 결과는 아래와 같습니다. 코딩 결과도 함께 나타냈습니다. **
trip <- data.frame(id = 1:5,
city = c("Berlin", "Amsterdam", "Brussels", "Paris", "Zurich"), #여행으로 가는 순서에 맞도록 작성하였다.
lat = c(52.50836, 52.36511, 50.85314, 48.86145, 47.37965), #위도와 경도는 직접 구글지도에서 짚은 위도와 경도 값에서 소수 다섯째 자리를 반올림하여 계산했다.
lon = c(13.36415, 4.89019, 4.36065, 2.34428, 8.53741),
days = c(1,3,2,15,10));
map <- leaflet(trip) %>%
addProviderTiles(providers$CartoDB.DarkMatter) %>% #지도를 다크모드로 설정했다.
setView(lat = 50, lng = 10, zoom = 5) %>% #초기 시점을 다섯 개의 노란색 점(방문 위치)에 맞도록 설정했다.
addCircles(lat = ~lat, lng = ~lon, color = "yellow", radius = ~days*3000) %>%
addPolylines(lat = ~lat, lng = ~lon, weight=.5, color="yellow") %>% #경로는 다크모드에 잘 보이는 "노란색(yellow)"으로 설정. 긁기는 0.5로 설정했다.
addMiniMap(width = 150, height = 150); map #미니맵을 추가했다.
이상 보고를 마칩니다. 감사합니다.