본문 바로가기

회사생활/R

R 시각화 - 산점도 (Basic Scatter Plot)

R 시각화 - 산점도 (Basic Scatter Plot)




샘플 데이터를 불러와서 어떻게 생긴 데이터인지 보기 쉽게 시각화를 해보자.



▼ 샘플 데이터 불러오는 법 ▼

2017/03/09 - [Analysis/R] - R 샘플 데이터 불러오기




(1) 데이터 내보내기


R에서 가공한 데이터를 로컬 PC에 CSV 파일로 저장해보자.


왜 불러오기가 아니라 내보내기 먼저 하냐면 R에서 제공하는 샘플 데이터를 CSV 파일로 내보내고 다시 R로 CSV 파일을 불러와 보려고 하기 때문이다.



iris 데이터를 지정한 경로에 sample_iris.csv 파일로 저장하는 구문이다. 동일한 코드인데 경로에 \\를 썼느냐 / 를 썼느냐의 차이이다.

write.csv(x = iris,
          file = "D:\\R\\kkokkilkon\\sample_iris.csv",
          row.names = F)
write.csv(x = iris,
          file = "D:/R/kkokkilkon/sample_iris.csv",
          row.names = F)




(2) 데이터 불러오기


방금 내보냈던 sample_iris.csv 파일을 불러오자.



sample_iris.csv 파일을 불러와서 sample에 할당하는 구문이다.

sample <- read.csv(file = "D:\\R\\kkokkilkon\\sample_iris.csv",
                   stringsAsFactors = F)




(3) 산점도 그리기


산포도라고도 부르고 Scatter Plot 이라고도 부른다.


연속형 변수일 때 가장 기본적으로 그려보는 그래프이다. 연속형 변수는 쉽게 말하면 숫자값으로 이루어진 변수이다.



 데이터 중 Sepal.Length 변수와 Petal.Width 변수로 산점도를 그리는 구문이다. 동일한 코드인데 축에 해당하는 변수를 x, y로 지정했느냐 formula로 지정했느냐의 차이이다.

plot(x = sample$Sepal.Length,
     y = sample$Petal.Width)
plot(formula = Petal.Width ~ Sepal.Length,
     data = sample)


순서대로 코드를 실행했을 때 위와 같이 두 그래프가 그려지게 된다.


차이는 축 이름이 다른 정도인데, 축 이름은 당연히 옵션으로 변경 가능하다.


아래부터는 x, y든 formula든 동일하니 formula를 사용한 구문만 작성하겠다.

-
-


(4) 축 이름과 그래프 제목 달기


ylab = "y축 이름", xlab = "x축 이름", main = "그래프 제목" 을 추가한 구문이다.

plot(formula = Petal.Width ~ Sepal.Length,
     data = sample,
     ylab = "Petal 너비",
     xlab = "Sepal 길이",
     main = "Sample 산점도")



실행하면 위 그래프와 같다.




(5) 축 범위 지정하기


xlim = c(x축 최소값, x축 최대값), ylim = c(y축 최소값, y축 최대값) 을 추가한 구문이다.

plot(formula = Petal.Width ~ Sepal.Length,
     data = sample,
     ylab = "Petal 너비",
     xlab = "Sepal 길이",
     main = "Sample 산점도",
     xlim = c(4, 6),
     ylim = c(0, 1))





(6) 색상으로 그룹 구분하기


col = c(색상1, 색상2, 색상3)[그룹변수] 를 추가한 구문이다.

plot(formula = Petal.Width ~ Sepal.Length,
     data = sample,
     ylab = "Petal 너비",
     xlab = "Sepal 길이",
     main = "Sample 산점도",
     xlim = c(4, 6),
     ylim = c(0, 1),
     col = c("red", "blue", "green")[sample$Species])


위 구문을 실행하면 그래프에 아무 것도 그려지지 않을 것이다.


처음에 우리가 sample_iris.csv 파일을 불러올 때 stringAsFactors = F 옵션으로 불러왔기 때문이다. (위쪽에 (2) 데이터 불러오기 참조)


저런 구문인 변수인 sample$Species가 factor 변수형일 때만 적용된다.



변수를 factor로 변환하는 구문이다. 아래 구문을 실행하고 위 plot 구문을 실행하면 Species에 따라 색상으로 구분되는 그래프가 그려진다.

sample$Species <- as.factor(sample$Species)





▼ basic 그래프보다는 미적인 부분을 디테일하게 조정할 수 있는 ggplot 포스팅 보기 ▼

2017/03/17 - [Analysis/R] - 한눈에 정리하는 ggplot2를 이용한 R 시각화 기초