인공지능/R

R - 시각화 ① pie chart, bar graph

해피밀세트 2020. 4. 20. 18:24
반응형

 

 

1. 원형그래프(pie chart)

  • 질적자료(범주형자료) 대한 상대도수분포를 나타내기 위해 일반적으로 사용되는 그래프
  • 원을 그린 원에 계급의 상대도수에 대응하는 면적 또는 부분으로 나눈다.
  • 상대도수값을 가지고 시각화
  • 도수 (frequency) : 범주에 속하는 관측값의 개수
  • 상대도수(relative frequency) : 도수를 전체 개수로 나눈 비율

# 기본 사용법

labels <- c("좋다","보통","싫다","무응답")
frequency <- c(45,25,20,10)
pie(frequency, labels=labels)

# 제목넣기

pie(frequency, labels=labels, main = "고객만족도조사")

# 색상넣기

pie(frequency, labels=labels, main = "고객만족도조사",
     col = c("red","blue","green","yellow"))

# 색상 종류

rainbow              : 무지개색

heat.colors(12)     : 적색, 황색에 치우친 색

terrain.colors(12)   : 지구지형색

topo.colors(12)     : 청색에 가까운색

cm.colors(12)       : 핑크, 블루

# 무지개색으로 넣기

pie(frequency, labels=labels, main = "고객만족도조사",
     col = rainbow(length(labels)))

# 범례 표현

legend("topright", legend=frequency,cex=0.6,
          fill=rainbow(length(labels)))

 

 

plotrix : 3차원 파이차트 제공 라이브러리

install.packages("plotrix")

library(plotrix)

 

# 기본 사용법

pie3D(frequency)

# labels : 라벨 붙이기

label <- c("좋다","보통","싫다","무응답")
pie3D(frequency, labels=label)

# explode : 간격 띄우기

pie3D(frequency, labels=label, explode=0.1)

# labelcex : 글자 크기 조정

pie3D(frequency, labels=label, explode=0.1,
         labelcex=0.9)

# main : 제목 넣기

pie3D(frequency, labels=label, explode=0.1,
         labelcex=0.7, main="선호도조사")

# col : 색상 지정

pie3D(frequency, labels=label, explode=0.1,
      labelcex=0.7, main="성별현황",
      col=c("blue","red","yellow","green"))

# pie3D.labels : 안쪽에 라벨 표현

pie3D(frequency, explode=0.1,
         labelcex=0.7, main="성별현황",
         col=c("blue","red","yellow","green"))
pie3D.labels(frequency, labels=label, labelrad=0.7,
                 labelcex=0.9,labelcol="whitesmoke")

 


 

2. 막대그래프(bar graph)

  • 범주에서 도수의 크기를 막대로 표현한다.
  • 질적자료를 시각화

 

sales <- c(150,100,70,30)
team <- c("영업1팀", "영업2팀","영업3팀","영업4팀")

# 기본 사용법

barplot(height=sales, width=0.5, names.arg=team)

# 제목 및 색상 넣기

barplot(height=sales, width=0.5,
        names.arg=team, horiz=F,
        col=rainbow(length(team)),
        main="영업팀별 실적현황",
        xlab="영업팀", ylab="영업실적(억원)",
        ylim=c(0,180))

# 가로형 막대 그래프 만들기

barplot(height=sales, width=0.5,

        names.arg=team, horiz=T,

        col=rainbow(length(team)),

        main="영업팀별 실적현황",

        xlab="영업실적(억원)", ylab="영업팀",

        xlim=c(0,180))

 

stacked bar chart 

# 범례가 꼭 표현되어야 한다.

x1 <- c(2,6,9,5)

x2 <- c(8,10,15,6)

data <- rbind(x1,x2)

name <- c("1팀","2팀","3팀","4팀")

label <- c("2018년","2019년")

barplot(data,names.arg=name,main="팀별실적",

        xlab="팀",ylab="판매실적",ylim=c(0,30),

        legend.text=label,col=c("darkblue","red"))

 

group bar chart

# 범례가 꼭 표현되어야 한다.

barplot(data,names.arg=name,main="팀별실적",

        xlab="팀",ylab="판매실적",ylim=c(0,30),

        legend.text=label,col=c("darkblue","red"),

        beside = T)

 

반응형

'인공지능 > R' 카테고리의 다른 글

R - cut  (0) 2020.04.21
R - 시각화 ② scatter plot, histogram  (0) 2020.04.21
R - 분할표 만들기  (0) 2020.04.20
R - grep과 정규표현식  (0) 2020.04.17
R - melt / dcast  (0) 2020.04.17