ch0nny_log

[빅데이터분석] R _ 34. 시각화 툴의 역사 (막대그래프)/ 데이터 시각화 1 본문

빅데이터 분석(with 아이티윌)/R

[빅데이터분석] R _ 34. 시각화 툴의 역사 (막대그래프)/ 데이터 시각화 1

chonny 2024. 7. 1. 17:00

 

1960-1970년대
초기 컴퓨터 시각화 도구
  • IBM's GPSS: General Purpose Simulation System은 1960년대에 개발되어 컴퓨터 시뮬레이션과 함께 시각화 도구로 사용되었습니다.
  • SYMAP (Synagraphic Mapping System): 1966년 하버드 대학의 하워드 피셔가 개발한 프로그램으로, 초기 컴퓨터 지도 제작 시스템 중 하나입니다.
1980년대
SAS (Statistical Analysis System)
  • 1976년 SAS Institute가 설립되었고, 1980년대에 데이터 분석 및 시각화를 위한 주요 도구로 발전했습니다.
Matlab
  • 1984년 MathWorks에 의해 출시된 Matlab은 수치 계산 및 데이터 시각화를 위한 강력한 도구로 자리 잡았습니다.
1990년대
Excel
  • Microsoft Excel은 1985년에 출시되었지만, 1990년대에 들어서면서 데이터 분석과 시각화를 위한 주요 도구로 인기를 끌었습니다.
Origin
  • OriginLab에서 개발한 Origin은 1991년 첫 출시되었으며, 과학적 데이터 분석 및 그래프 작성 도구로 인기를 얻었습니다.
2000년대
R 및 ggplot2
  • R 프로그래밍 언어는 1993년에 개발되었지만, 2000년대에 들어서면서 데이터 시각화에 널리 사용되었습니다.
  • ggplot2: 2005년 해들리 위컴이 개발한 ggplot2 패키지는 R의 강력한 그래프 작성 도구로, 문법 기반의 시각화 패러다임을 제공했습니다.
Tableau
  • 2003년에 설립된 Tableau Software는 직관적이고 대화형 데이터 시각화 도구로 급성장했습니다.
2010년대
D3.js (Data-Driven Documents)
  • 2011년 마이크 보스트록에 의해 개발된 D3.js는 웹 기반 데이터 시각화를 위한 자바스크립트 라이브러리로, SVG, HTML, CSS와 함께 사용되어 강력한 데이터 시각화를 가능하게 했습니다.
Plotly
  • 2012년에 설립된 Plotly는 Python, R, Matlab, Julia 등 다양한 프로그래밍 언어와 함께 사용할 수 있는 대화형 데이터 시각화 도구를 제공합니다.
Bokeh
  • Bokeh는 Python용 대화형 시각화 라이브러리로, 2013년에 개발되었습니다. 대화형 플롯과 대규모 데이터셋을 다루기에 적합합니다.
Power BI
  • Microsoft Power BI는 2013년에 출시된 비즈니스 분석 서비스로, 데이터 시각화와 비즈니스 인텔리전스를 위한 강력한 도구입니다.
2020년대
Altair
  • Altair는 2016년에 처음 출시되었지만, 2020년대에 들어서면서 점점 더 많은 사용자를 확보한 Python 시각화 라이브러리입니다. Vega-Lite 기반의 선언적 문법을 사용합니다.
Seaborn
  • Seaborn은 2014년에 처음 개발되었지만, 2020년대에 걸쳐 널리 사용되었습니다. Python의 matplotlib 라이브러리를 기반으로 고수준의 인터페이스를 제공합니다.

 

* 데이터 시각화 그래프의 종류  

 1. 막대 그래프
 2. 원형 그래프
 3. 산포도(산점도) 그래프
 4. 라인 그래프
 5. 히스토그램 그래프
 6. 박스 그래프 
 7. 특수 그래프1( 소리를 시각화)  --> 의료 데이터, 음악 분류
 8. 특수 그래프2( 워드 클라우드)
 9. 특수 그래프3( 지도 그래프) 

문법1. R에 내장된 함수를 이용해서 막대 그래프를 그리시오. 

emp5 <- emp[ order(emp$sal, decreasing=TRUE) , c("ename","sal") ]
emp5

barplot( emp5$sal,  
         main="Salary Bar Char",
         names.arg = emp5$ename,
         ylab="Salary",
         col="blue") 

barplot( emp5$sal,  
         main="Salary Bar Char",
         names.arg = emp5$ename,
         ylab="Salary",
         col="gold",
         horiz= TRUE)​

 

 

문법2. ploty 를 이용해서 막대 그래프를 그리시오.

 install.packages("plotly")
 library(plotly)

 setwd("c:\\data")
 emp <- read.csv("emp.csv", header=T)
 
 #직업별 인원수 계산 
  job_counts <- table(emp$job)
 
 #plotly 를 사용한 막대 그래프 생성
 fig <- plot_ly( x = names(job_counts), y=as.numeric(job_counts), type='bar' )

 #그래프 출력
 fig​
문제3. 색을 다양하게 출력하시오.
# install.packages("plotly")
 library(plotly)

 setwd("c:\\data")
 emp <- read.csv("emp.csv", header=T)
 
 #직업별 인원수 계산 
  job_counts <- table(emp$job)
 
 # Rcolorbrewer 팔래트 중에서 5가지 색상 선택
 
 #install.packages("RColorBrewer") 
 library(RColorBrewer) 
 colors <- brewer.pal( 5, "Set3")

 #plotly 를 사용한 막대 그래프 생성
 fig <- plot_ly( x = names(job_counts), y=as.numeric(job_counts), type='bar', 
                    marker=list(color=colors) )

 #그래프 출력
 fig​
문제3. 부서번호와 부서번호별 인원수 가지고 plotly로 막대 그래프를 그리시오 
# install.packages("plotly")
library(plotly)

setwd("c:\\data")
emp <- read.csv("emp.csv", header=T)

#직업별 인원수 계산 
deptno_counts <- table(emp$deptno)

# Rcolorbrewer 팔래트 중에서 5가지 색상 선택

#install.packages("RColorBrewer") 
library(RColorBrewer) 
colors <- brewer.pal( 5, "Set3")

#plotly 를 사용한 막대 그래프 생성
fig <- plot_ly( x = names(deptno_counts), y=as.numeric(deptno_counts), type='bar', 
                marker=list(color=colors) )

#그래프 출력
fig​

문제4. 중고차 데이터를 이용해서 모델별로 막대그래프를 그리시오.
# install.packages("plotly")
library(plotly)

# 테이블 업로드
setwd("c:\\data")
usedcars <- read.csv("usedcars.csv", header=T)
head(usedcars)

#직업별 인원수 계산 
usedcars_counts <- table(usedcars$model)
usedcars_counts
# Rcolorbrewer 팔래트 중에서 5가지 색상 선택

# install.packages("RColorBrewer") 
library(RColorBrewer) 
colors <- brewer.pal( 5, "Set3")

# plotly 를 사용한 막대 그래프 생성
fig <- plot_ly( x = names(usedcars_counts), y=as.numeric(usedcars_counts), type='bar', 
                marker=list(color=colors) )

#그래프 출력
fig

★ 마지막 문제. sql 포트폴리오데이터를 막대그래프로 시각화하시오.  
# 테이블 업로드
setwd("c:\\data")
birth <- read.csv("birth_table2.csv", header=T, fileEncoding ='euc-kr') 
head(birth)

# 국내 년도별 출산수 출력력
total_birth <- tapply(birth$b_cnt,birth$b_year,sum)
total_birth 
# Rcolorbrewer 팔래트 중에서 5가지 색상 선택

# install.packages("RColorBrewer") 
library(RColorBrewer) 
colors <- brewer.pal( 5, "Set3")

# plotly 를 사용한 막대 그래프 생성
fig <- plot_ly( x = names(total_birth ), y=as.numeric(total_birth ), type='bar', 
                marker=list(color=colors) )

#그래프 출력
fig​