Kimuksung / bigdata

0 stars 0 forks source link

Data visualization #15

Open Kimuksung opened 4 years ago

Kimuksung commented 4 years ago

Data visualization

  1. discrete data visualization barplot() – 막대차트 1차원의 vector의 경우 바로 naming한 값과 vector값을 적용 시킨다.
    chart_data <- c(305,700, 320, 460, 330, 480, 380, 520) 
    names(chart_data) <- c("2016 1분기","2017 1분기","2016 2분기","2017 2분기","2016 3분기","2017 3분기","2016 4분기","2017 4분기")
    barplot(chart_data,ylim = c(0,max(chart_data)+200), main="2016년 vs 2017 판매 현황" ,col=rainbow(8))#,horiz=F)

2차원의 경우

barplot(VADeaths, beside=T,col=rainbow(5),
main="미국 버지니아주 하위계층 사망비율")
legend(19, 71, c("50-54","55-59","60-64","65-69","70-74"), cex=0.8,
fill=rainbow(5))
  1. Continuous Data virtualization 1) 상자 그래프

    boxplot()

    2) histogram

    hist(iris$Sepal.Width, xlab="iris$Sepal.Width",
     col="mistyrose", #색상
     main="iris 꽃받침 넓이 freq histogram", xlim=c(min(iris$Sepal.Width-1), max(iris$Sepal.Width+1)))

    3) plot

    plot(iris$Sepal.Length,iris$Petal.Length,col=iris$Species)#, pch=5) 

산점도 행렬 nxn -> pairs

03. iris3 데이터 셋을 대상으로 다음 조건에 맞게 산점도를 그리시오.

data(iris3)

iris3

조건1) iris3 데이터 셋의 자료구조 확인 : 힌트) str()

str(iris3)

조건2) Setosa 꽃의 종을 대상으로 x축은 "Sepal W." 칼럼,

y축은 "Sepal L." 칼럼으로 산점도 그리기

iris3[,"Sepal L.","Setosa"] plot(iris3[,"Sepal W.","Setosa"],iris3[,"Sepal L.","Setosa"])

조건3) "Versicolor" 꽃의 종을 대상으로 산점도 행렬 시각화하기

pairs(iris[,,2])

만능차트

methods(plot) #어떤 type을 지원하여 주는지

시계열 자료

plot.ts

WWWusage par(mfrow=c(1,1)) plot(WWWusage)

회 귀 모 델

plot.lm

install.packages("UsingR") library(UsingR) library(help="UsingR")

data(Galton) data(galton) str(galton)# 회귀 용어 제안 model <- lm(child~ parent,data=galton) plot(model)

4) 산점도 행렬 : 변수 간의 비교

pairs(iris[-5])

꽃 종별 산정도 행렬

table(iris$Species) pairs(iris[iris$Species=='setosa' , 1:4]) pairs(iris[iris$Species=='virginica' , 1:4])

5) 차트를 파일 저장

setwd("C:/ITWILL/2_Rwork/R-script") # 폴더 지정 jpeg("iris.jpg", width=720, height=480) # 픽셀 지정 가능 plot(iris$Sepal.Length, iris$Petal.Length, col=iris$Species) title(main="iris 데이터 테이블 산포도 차트") dev.off() # 장치 종료

Kimuksung commented 4 years ago

#########################

3차원 산점도

######################### install.packages('scatterplot3d') library(scatterplot3d)

꽃의 종류별 분류

iris_setosa = iris[iris$Species == 'setosa',] iris_versicolor = iris[iris$Species == 'versicolor',] iris_virginica = iris[iris$Species == 'virginica',]

scatterplot3d(밑변, 오른쪽변, 왼쪽변, type='n') # type='n' : 기본 산점도 제외

d3 <- scatterplot3d(iris$Petal.Length, iris$Sepal.Length, iris$Sepal.Width, type='n')

d3$points3d(iris_setosa$Petal.Length, iris_setosa$Sepal.Length, iris_setosa$Sepal.Width, bg='orange', pch=21)

d3$points3d(iris_versicolor$Petal.Length, iris_versicolor$Sepal.Length, iris_versicolor$Sepal.Width, bg='blue', pch=23)

d3$points3d(iris_virginica$Petal.Length, iris_virginica$Sepal.Length, iris_virginica$Sepal.Width, bg='green', pch=25)