본문 바로가기
Python/matplotlib

matplotlib RuntimeError: Matplotlib is currently using a non-GUI backend 오류 해결하기

by PySun 2024. 10. 29.
반응형

소개

파이썬의 시각화 라이브러리인 Matplotlib을 사용하다 보면 때때로 'RuntimeError: Matplotlib is currently using a non-GUI backend'라는 오류에 직면하게 됩니다. 이 에러는 주로 GUI(i.e., Graphic User Interface) 백엔드에서 실행하려 할 때 발생하는 문제입니다. 특히, Jupyter 노트북이나 스크립트를 실행할 때 자주 경험할 수 있습니다. 이번 블로그에서는 이 오류가 발생하는 원인과 해결 방법에 대해 알아보겠습니다.

에러 발생 예시 코드

먼저, 'RuntimeError: Matplotlib is currently using a non-GUI backend' 에러가 발생할 수 있는 간단한 예시 코드를 살펴보겠습니다.

import matplotlib.pyplot as plt

# 간단한 그래프 데이터
x = [1, 2, 3, 4]
y = [10, 20, 25, 30]

# 그래프 그리기
plt.plot(x, y)
plt.show()

에러 해결 방법

1. GUI 백엔드 설정 변경하기

가장 간단한 해결책은 Matplotlib에서 GUI 백엔드를 명시적으로 설정하는 것입니다. 이는 'Agg'나 'TkAgg'와 같은 옵션으로 설정할 수 있죠.

import matplotlib
matplotlib.use('TkAgg')  # 또는 'Qt5Agg', 'MacOSX' 등의 다른 GUI 백엔드 사용 가능
import matplotlib.pyplot as plt

# 그래프 데이터 및 출력
x = [1, 2, 3, 4]
y = [10, 20, 25, 30]
plt.plot(x, y)
plt.show()

2. Jupyter 노트북에서 %matplotlib magic 사용하기

Jupyter 노트북을 사용 중이라면, `%matplotlib inline` 또는 `%matplotlib notebook`을 통해 인터랙티브한 그래프를 표시할 수 있습니다. 이 명령은 노트북 환경에서 Matplotlib이 GUI 백엔드를 사용할 수 있도록 만듭니다.

%matplotlib inline
import matplotlib.pyplot as plt

# 그래프 데이터 및 출력
x = [1, 2, 3, 4]
y = [10, 20, 25, 30]
plt.plot(x, y)
plt.show()

3. 적절한 라이브러리가 설치되었는지 확인하기

Matplotlib이 사용하는 특정 GUI 라이브러리가 설치되어 있는지 확인하세요. 예를 들어, 'Tkinter'는 Python GUI 프로그래밍을 위해 일반적으로 사용됩니다. 설치되지 않았다면, 아래 명령어로 설치할 수 있습니다.

sudo apt-get install python3-tk

마무리

이번 글에서는 'RuntimeError: Matplotlib is currently using a non-GUI backend' 에러의 원인과 해결책에 대해 살펴보았습니다. GUI 백엔드 설정을 변경하거나, Jupyter 노트북의 매직 커맨드를 사용하며, 필요한 라이브러리를 설치하여 문제를 해결할 수 있습니다. 앞으로 Matplotlib을 활용하여 시각화를 통해 데이터를 탐색해보세요!

반응형