본문 바로가기
4. 그래프 꾸미기(저수준 함수)/axis() - 축 추가, 꾸미기

[R] ceiling(올림)과 floor(버림) 사용 예시 - 그래프 구간 자동 설정

by makhimh 2020. 1. 2.
반응형

[R] ceiling(올림)과 floor(버림) 사용 예시 - 그래프 구간 자동 설정

ceiling은 올림, floor는 버림을 하는 함수입니다.


> ceiling(3.2)
[1] 4
> floor(3.7)
[1] 3


이 함수를 언제 사용할까요?

그래프 x축과 y축의 구간을 설정해야 하는 상황을 가정합시다. 데이터는 아래와 같습니다.

x=c(1.1,1.5,3.2,4.4,5.7)
y=c(2.3,3.5,6.3,2.6,10.2)

그래프를 아래와 같이 그릴 수 있습니다.


x=c(1.1,1.5,3.2,4.4,5.7)
y=c(2.3,3.5,6.3,2.6,10.2)

plot(x,y,xaxt="n",yaxt="n",
     xlim=c(1,6),ylim=c(2,11))

x_axis_tick=seq(1,6,by=1)
y_axis_tick=seq(2,11,by=1)

axis(side=1,at=x_axis_tick)
axis(side=2,at=y_axis_tick)


데이터가 계속 업데이트 되는 상황이라면 위 빨간 부분을 계속 바꿔주어야 합니다. 이런 불편함을 해소하기 위해, 데이터가 들어오면 데이터의 최솟값을 버림한 값과, 최댓값을 올림한 값을 구간으로 설정해보도록 하겠습니다.


x=c(1.1,1.5,3.2,4.4,5.7)
y=c(2.3,3.5,6.3,2.6,10.2)

x_max=ceiling(max(x))
x_min=floor(min(x))
y_max=ceiling(max(y))
y_min=floor(min(y))

plot(x,y,xaxt="n",yaxt="n",
     xlim=c(x_min,x_max),ylim=c(y_min,y_max))

x_axis_tick=seq(x_min,x_max,by=1)
y_axis_tick=seq(y_min,y_max,by=1)

axis(side=1,at=x_axis_tick)
axis(side=2,at=y_axis_tick)


위와 같이 수정하면 x와 y데이터가 바뀌어도, 자동으로 구간을 설정해줍니다.

반응형

댓글