[R] RStudio 그래프 팝업창 안뜨게 하는 방법

해당 포스트는 네이버지식인을 통해 질문받은 'RStudio 그래프 팝업창 안 뜨게 하는 방법'에 대한 답변을 공유하는 글입니다.

turn-off-popup-window-output-in-r

 

질문

RStudio 그래프를 출력하면 사진처럼 옆에 R 프로그램에서 나온느게 아니라 따로 팝업창으로 나옵니다... 불편해서 바꾸고 싶은데 어떻게 바꾸나요?

turn-off-popup-window-output-in-r
[출처] 네이버지식인

 

풀이

RStudio에서는 그래픽 설정을 통해 출력 결과를 다양하게 표현할 수 있습니다. 질문 상황은 이전 코드 어디에선가 그래픽 출력창을 생성하는 x11()이 실행되었고, 이로 인해 그래픽 출력 결과가 내부가 아닌 팝업으로 생성된 출력창에 출력되는 상황인 것으로 보입니다.

이러한 상황은 dev.off() 명령어 실행으로 간단히 해결 가능하며, 아래에서는 두 명령어에 대한 설명과 간단한 테스트 코드를 설명합니다.

1. x11()

x11() 함수는 RStudio에서 그래픽 디바이스를 생성하는 함수입니다. 이 함수를 호출하면 새로운 창이 생성되고 R에서 그래픽을 그릴 수 있는 빈 도화지가 준비됩니다. 그래픽 함수들을 사용하여 그림을 그릴 수 있고, 그림을 다양한 형식으로 저장하거나 인쇄할 수 있습니다.

2. dev.off()

dev.off() 함수는 현재 활성화된 그래픽 디바이스를 닫는 함수입니다. R에서 그린 그림을 저장하거나 인쇄하기 전에 이 함수를 사용하여 그래픽 디바이스를 닫아야 합니다. 이 함수를 호출하면 현재 그래픽 디바이스가 닫히고, RStudio에서 새로운 그래픽 디바이스를 생성하거나 다른 작업을 수행할 수 있습니다.

3. 예시 코드

아래에서는 cars 데이터셋을 사용하여 그래프를 그리는 예시를 설명합니다. 아래 명령어를 실행하면, cars 데이터의 6줄을 탐색하고, 산점도를 출력합니다.

# 데이터 확인
head (cars)

# 그래프 출력 -> 내부 출력창에 출력됨
plot(cars)


아래에서는 x11() 함수를 실행한 후에 그래프를 출력하고, 새로 만들어진 팝업 그래픽창을 해제해 보겠습니다.

# 새로운 그래픽 디바이스 생성
x11()

# 그래프 출력 -> 새로 만들어진 그래픽 팝업창에 출력됨
plot(cars)

# 현재 활성화된 그래픽 디바이스 닫기 -> 팝업창 해제
dev.off()


위 명령어를 차례대로 실행하면 팝업 창에 출력된 그래프가 dev.off() 명령어 실행으로 없어지는 것을 확인하실 수 있습니다. 이후 다시 그래프를 출력해 보면 내부 출력창에 시각화 결과가 출력되는 것을 확인하실 수 있습니다.

# 그래프 출력 -> 내부 출력창에 출력됨
plot(cars)

 

마무리

이 포스트에서는 RStudio에서 cars 데이터셋을 이용하여 x11(), dev.off()를 활용해 그래프를 그리는 예시를 다루었습니다. 네이버 지식인을 통해 자주 질문받는 내용이라 포스트를 작성하게 되었으며, 많은 분들에게 도움이 되셨으면 좋겠습니다.

 

관련 링크

[1] 네이버 지식인
[2] [R] Error in plot.window(...) : 유한한 값들만이 'xlim'에 사용될 수 있습니다
[3] [R] 에러: 예상하지 못한 기호(symbol)입니다. (Error: unexpected symbol)