728x90
2021/04/14(수)
JSP 지역별 지도화면
https://cordingdoah.tistory.com/105
서울지역의 지역별 음식점 수와 인구수를 가지고 있는 데이터를 찾아옴
지역의 id값을 넣어주고 csv파일 생성
<R 지도시각화 코딩>
#지역 시각화
#서울
install.packages("ggmap")
install.packages("ggplot2")
install.packages("raster")
install.packages("rgeos")
install.packages("maptools")
install.packages("rgdal")
library(ggmap)
library(ggplot2)
library(raster)
library(rgeos)
library(maptools)
library(rgdal)
register_google(key = "구글 API키 필요")
P <- read.csv("seoultot.csv", header = TRUE) #시각화할 데이터셋
P$rate <- P$Peple/P$Store
View(p)
map <- shapefile("TL_SCCO_SIG.shp") #지리 정보 데이터셋
map <- spTransform(map, CRSobj = CRS('+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs'))
new_map <- fortify(map, region = 'SIG_CD')
View(new_map)
new_map$id <- as.numeric(new_map$id)
seoul_map <- new_map[new_map$id <= 11740,]
P_merge <- merge(seoul_map, P, by='id')
q<-ggplot() + geom_polygon(data = P_merge, aes(x=long, y=lat, group=group ,fill = rate))+labs(fill="서울특별시 인구수대비 음식점 비율(%)")
q+scale_fill_gradient(low = 'white',high = 'red')
map <- get_map(location='seoul',zoom = 11,maptype = 'roadmap',color = 'bw')
z<-ggmap(map)+geom_polygon(data=P_merge,aes(x=long,y=lat,group=group,fill=rate),alpha=0.6)+labs(fill="서울특별시 인구수대비 음식점 비율(%)")
z+scale_fill_gradient(low = 'white',high = 'red')
구글 api키를 사용해서 지도를 사용 rate에는 인구대비 음식점 수를 나타내줌
지도를 띄우고 서울지역에 최대 id값을 넣어줌
ggplot를 사용해서 시각화 해줌 red가 진할수록 인구수대비 음식점수가 많은 것임
노원구, 도봉구, 강북구, 양천구가 인구수 대비 음식점 수가 많은 지역으로 나타났다는 것을 알 수 있음
728x90
'코딩 연습장 > R' 카테고리의 다른 글
Hadoop/Hive 이용한 부동산 거래량, 지수 비교 분석 프로젝트 - 2 (R 이용한 지도시각화) (0) | 2021.07.01 |
---|---|
R과 R스튜디오 설치 (0) | 2021.04.21 |