본문 바로가기

Programming/Python

[python error] plt.show() 해도 윈도우가 열리지 않는 경우

반응형

깃허브에 올라와있는 코드를 다루다가 시각화가 필요한 일이 있어

import matplotlib.pyplot as plt
'''
code 주절주절
'''
plt.show()

 

 

를 실행했으나 에러가 발생한것도 아니고 그냥 plt 윈도우가 뜨지도 않고 코드가 수행되버리는 일이 발생했다.

 

결론부터 말하면 실행하면서 지나가는 코드 중 어딘가에 backend 모드를 활성화시키는 코드가 있는 것이다.

나 같은 경우에는 아래의 코드가 문제 원인이었다.

import matplotlib
matplotlib.use('Agg')

중요한것은 이 코드가 다루고 있는 .py 파일 안에 있지 않고 다른 파일에 있어도 backend 모드가 되어버리는 것이다.

물론 다른 모듈을 import 하는 과정에서 위 코드가 실행되었을 것이다.

어쨋든 프로젝트안에 속해있는 모든 matplotlib.use('Agg') 에 주석을 달아놨다. 그랬더니 해결되고 plt.show() 가 잘 동작하더라.

반응형