★ 문법2. plotly 시각화 패키지로 원형 그래프 그리기 원형그래프는 데이터간 비율을 한눈에 파악할 때 유용한 그래프임.
# 데이터 로드
library(plotly)
emp <- read.csv("emp.csv", header=T)
# 직업별 인원수 계산
job_cnt <- table(emp$job)
job_cnt
# 색상 목록 정의
colors <- c("#BBDEFB", "#FFCCBC", "#E8F5E9", "#FFF9C4", "#FCE4EC")
# plotly 원형 그래프 생성
fig <-plot_ly(labels = names(job_cnt),
values = as.numeric(job_cnt),
type='pie',
marker=list(colors =colors) )
# 출력
fig
설명: plotly를 이용하면 더 세련된 그래프를 그릴수 있고 홈페이지에 그래프를 넣을때 아주편함.
문제 3. 중고차의 모델별 건수를 가지고 다음과 같이 원형 그래프를 그리시오.
# 데이터 로드
library(plotly)
setwd('c:\\data')
usedcars <- read.csv("usedcars.csv", header=T, fileEncoding ='euc-kr')
# 모델델별 인원수 계산
cars_cnt <- table(usedcars$model)
cars_cnt
# 색상 목록 정의
colors <- c("#BBDEFB", "#FFCCBC", "#E8F5E9", "#FFF9C4", "#FCE4EC")
# plotly 원형 그래프 생성
fig <-plot_ly(labels = names(cars_cnt ),
values = as.numeric(cars_cnt ),
type='pie',
marker=list(colors =colors) )
# 출력
fig
문제 4. 데이터 시각화를 빠르게 하기 위해 모아놓은 활용코드를 만드시오 (swith 함수)\
그리고 나서 yys.R 을 아래와 같이 수정합니다.
# 사용자가 선택할 수 있는 옵션 출력
cat("1: 막대 그래프 코드 \n")
cat("2: 원형 그래프 코드 \n")
# 사용자 입력 받기
num <- as.integer( readline(prompt="번호를 선택하세요:" ))
# switch 문을 사용해서 선택에 따라 다른 메세지 출력
result <- switch( num,
"1" = cat( readLines("bar_plot.R"), sep = "\n"),
"2" = cat( readLines("pie_plot.R"), sep = "\n"),
"유효하지 않은 선택입니다."
)
cat(result, "\n")
위 코드를 메모장에 저장하여 c드라이브에 저장 후 r studio 에 명령어작성
문제 5. bar_plot.R이라는 이름으로 빨리 가져다 쓸수 있는 막대 그래프 코드를 c:\\data 밑에 저장하시오.
# bar_plot.R
# 1. 데이터 불러오기
usedcars <- read.csv("usedcars.csv", header=TRUE)
head(usedcars)
# 2. 건수 불러오기
car_counts <- table(usedcars$model)
car_counts
# 3. 색깔 지정하기
colors <- c("gold", "skyblue", "tomato", "lightgreen", "purple")
# 4. plotly 를 사용한 막대 그래프 생성하기
fig <- plot_ly(x = names(car_counts),
y = as.numeric(car_counts),
type = 'bar',
marker = list(color = colors))
# 5. 그래프 출력
fig
문제 6. bar_plot.R 스크립트를 화면에 출력하시오.
> cat(readLines('bar_plot.R'),sep = '\n')
설명: readLines 함수로 bar_plot.R울 불러오고 cat으로 화면에 코드를 출력하는데 sep='\n' 으로 라인과 라인은 엔터로 구분해서 출력하겠다는 뜻임
문제 7. 특급 데이터 분석가 코드처럼 시각화 코드 모음을 불러오는 코드에 스크립트를 추가하시오 !
# 사용자가 선택할 수 있는 옵션 출력
cat("1: 막대 그래프 코드 \n")
cat("2: 원형 그래프 코드 \n")
# 사용자 입력 받기
num <- as.integer( readline(prompt="번호를 선택하세요:" ))
# switch 문을 사용해서 선택에 따라 다른 메세지 출력
result <- switch( num,
"1" = cat( readLines("bar_plot.R"), sep = "\n"),
"2" = " 두번째 옵션을 선택했습니다.",
"유효하지 않은 선택입니다."
)
cat(result, "\n")
설명: 위와 같이 코드가 나
문제 8. 원형 그래프 스크립트 저장
c://data 밑에 pie_plot.R 이라는 이름으로 아래의 스크립트를 저장하고
# plotly 패키지 로드
library(plotly)
# 작업 디렉토리 설정
setwd("c:\\data")
# 데이터 로드
usedcars <- read.csv("usedcars.csv", header = TRUE)
# 건수 계산산
color_counts <- table(usedcars$model)
# 사용자 정의 색상 목록
colors <- c("gold", "skyblue", "tomato", "lightgreen", "purple", "orange", "pink", "cyan")
# plotly를 사용한 원형 그래프 생성
fig <- plot_ly(labels = names(color_counts),
values = as.numeric(color_counts),
type = 'pie',
marker = list(colors = colors))
# 그래프 출력
fig