[R 기초] ggiraphExtra 패키지를 이용한 인터렉티브 시각화
2020. 10. 24. 16:58ㆍ노트/R : 통계
1. 미국의 범죄율 데이터를 인터렉티브한 지도 모양으로 시각화 하기
ggiraphExtra 패키지를 다운로드
install.packages("ggiraphExtra")
library(ggiraphExtra)
# 문자로 바꿔주기
str(USArrests)
head(USArrests)
행이름을 열(column)로 바꿔주기
library(tibble) # 데이터프레임
crime <-rownames_to_column(USArrests, var='state')
head(crime)
crime$state <- tolower(crime$state) # 소문자로 변환
crime$state
str(crime)
미국 지도 데이터 준비
library(ggplot2)
install.packages("maps")
library(maps)
states_map<- map_data('state')
str(states_map)
install.packages("mapproj")
library(mapproj)
미국의 범죄에 대한 데이터 시각화
ggChoropleth(data=crime, # 지도에 표시할 데이터
aes(fill-Murder, #색깔로 표시할 변수
map_id=state), # 지역 기준 변수
map=states_map) # 지도데이터
ggChoropleth(data= crime, # 지도에 표시할 데이터
aes(fill=Murder,# 색깔로 표시할 변수
map_id=state), # 지역 기준 변수
map=states_map, # 지도 데이터
interactive = T)
2. 한국의 인구수 데이터를 인터렉티브한 지도 모양으로 시각화 하기
install.packages("stringi")
install.packages("devtools")
devtools::install_github("cardiomoon/kormaps2014")
library(kormaps2014)
열 이름 변경
korpop1 <- rename(korpop1,
pop=총인구_명,
name=행정구역별_읍면동)
names(korpop1)
korpop1 = changeCode(korpop1)
class(korpop1) # "data.frame"
str(korpop1)
ggChoropleth(data=korpop1, # 지도에 표시할 데이터
aes(fill= pop, # 색깔로 나타낼 변수
map_id = code, # 지역 기준 변수
tooltip = name),
map = kormap1)
ggChoropleth(data = korpop1, # 지도에 표시할 데이터
aes(fill = pop, #색깔로 나타낼 변수
map_id=code, # 지역 기준 변수
tooltip=name), # 지도위에 표시할 지역 명
map = kormap1,
interactive=T)
#에러: Discrete value supplied to continuous scale 해결
class(korpop1$pop) #"character"
korpop1$pop <- as.numeric(korpop1$pop) # 숫자로 변환
인구 분포도 ggplot함수로 시각화 하기
ggplot(korpop1,
aes(map_id=code, fill=pop))+
geom_map(map=kormap1,colour="black",size=0.1)+
expand_limits(x=kormap1$long, y=kormap1$lat)+
scale_fill_gradientn(colours = c("white","orange","red"))+
ggtitle("2015년 인구분포도")+
coord_map()
'노트 > R : 통계' 카테고리의 다른 글
[분류] KNN 알고리즘을 이용한 데이터 분류하기 (0) | 2020.10.24 |
---|---|
[R 기초] 데이터 다루기(2) - apply 함수 (0) | 2020.10.24 |
[시계열] R에서 ARIMA 모델을 이용한 시계열 분석 (0) | 2020.10.23 |
[R 기초] ggplot2 라이브러리를 이용한 데이터 시각화 (0) | 2020.10.18 |
[R 기초] 데이터 다루기 (0) | 2020.10.18 |