티스토리 뷰

R

plot함수

코린이도이 2021. 6. 7. 11:27

1. plot()

  • 형식
    • plot(x,y,옵션)
    • x-x축 데이터, y-y축의 데이터
  • 옵션
    • main: 그래프 제목
    • sub: 그래프 부 제목
    • xlab: x축 제목, ylab: y축 제목
    • type: plot의 형태
    • axes: plot의 테두리선(예: axes=F -> x,y축 테두리선 표시하지 않음)
    • col: plot의 색상
  • > height<-c(165,177,167,173,178,180,172,175,168)
    > weight<-c(70,73,62,80,82,74,75,85,76)
    > plot(weight,height,main="키와 몸무게 분포",xlab="몸무게",ylab="키")

⇒ 결과

  • type의 형태
    • type='p': 포인트가 점의 형태로 그래프 그려짐
    • 'l': 선의 형태로 그래프 그려짐
    • 'o': 점이 선과 중첩되며 통과죔
    • 'h': 히스토그램과 같이 수직선 평태
    • 's'/'S': 계단형 그래프

2. 그래프에 유용한 par()함수

  • 화면분할 효과: 여러 그래프를 한 화면에 그릴 때 유용
  • 선의 굵기와 종류, 문자의 크기와 글꼴, 색상지정
  • 형식: par(인자)
  • 한 화면에 여러 그래프 그리는 작업
    • par(mfrow=c(행의 개수, 열의 개수)) → par(mfrow=c(2,3)): 2행 3열의 그래프. 즉, 한 화면에 6개의 그래프가 그려짐
    • #1행 3열 그래프 그리기
      > plot.new()   #새로운 그래프 그리기
      > par(mfrow=c(1,3))
      > plot(c(1:3),main="a-type")
      > plot(c(2:5),c(2:5),main="b-type",type="o")
      > plot(1:5,main="c-type",type='l')
      
      #2행 3열 그래프 그리기
      > plot.new()
      > x<-c(1:5)
      > y<-c(1:5)
      > par(mfrow=c(2,3))
      > kind=c('p','l','o','s','S','h')
      > for(i in 1:length(kind)){
      +   title<-paste("type=",kind[i])
      +   plot(x,y,type=kind[i],main=title)
      + }
       
    •  
    • 결과

 

3. 그래프 점과 관련한 points()함수

  • 형식: points(x,y,pch=점의 형태를 번호로 표시,cex=점의 크기기술)
  •  종류

  • > plot.new()
    > plot(1:5,1:5,main="여러 형태의 점")
    > points(3.2,pch=2,cex=2)
    > points(2,pch=15,cex=3)
    > points(2.5,pch=20,cex=1)
  • 결과 

 

4. 선을 그리는 lines()함수

  • 형식: lines(x,lty=선의 타입기술,col=선 색상,lwd=선의 굵기를 숫자로 표시)
  • > plot.new()
    > plot(1:5,1:5,type='n')
    > lines(c(1,3),c(3,3),lty='dotted',lwd=3,col='red')
    > lines(c(1,3),c(4,4),lty='solid',lwd=2,col='green')
    > lines(c(1,5),lty='dashed',lwd=4,col='blue')
  • 결과

 

5. 기타 그래프를 풍성하게 작업하기 위한 함수들

  • 그래프 안에 선 그리기: abline() 함수 → abline(h=3,lty='solid')
  • 그래프 안에 텍스트 삽입: text()함수 → text(3,2,"하위 data군")
  • 범례삽입 → legend(x,y,cex=글자크기,col=색상,lty=선 종류)
  • 그래프의 축을 삽입 → axis(위치(1-아래,2-왼쪽,3-위,4-오른쪽),at=그려지는 값,labels=그려지는 값의 레이블,lty=선 종류)
  • > plot.new()
    > x<-c(165,170,173,180,176,172,168)
    > y<-c(66,70,72,80,85,78,65)
    > name<-c('a','b','c','e','f','g','h')
    > plot(x,y,type="b",pch=21,col=rainbow(length(x)))
    > abline(h=seq(70,80,5),col="grey",lty=2)
    > text(175,73,"표준",col="green")
    > axis(2,at=x,labels=x,col.axis="gray")
    > legend("bottomright",col=rainbow(length(x)),legend=name,lty=1)
  • 결과

'R' 카테고리의 다른 글

ggplot2()  (0) 2021.06.07
plot종류  (0) 2021.06.07
외부파일 읽어오기  (0) 2021.06.06
함수(function)  (0) 2021.06.06
조건제어문(if, ifelse, for, while, repeat)  (0) 2021.06.06
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함