디스플레이가 정의되지 않은 Matplotlib를 사용하여 PNG 생성
그래픽 사용자 인터페이스(GUI) 없이 matplotlib로 작업할 때 다음을 나타내는 오류가 발생할 수 있습니다. "표시 이름도 없고 $DISPLAY 환경 변수도 없습니다." 이 오류는 matplotlib가 기본적으로 X 기반 백엔드를 사용하려고 시도하기 때문에 발생합니다.
그래픽 인터페이스가 없는 시스템에서 이 문제를 해결하려면 다음 단계를 따르십시오.
1단계: 강제 실행 Agg Backend를 사용하기 위한 Matplotlib
matplotlib 패키지에서 구성 요소를 가져오기 전에 다음 코드를 포함하여 강제로 실행하세요. 비대화형인 'Agg' 백엔드를 사용하려면 matplotlib를 사용하세요.
import matplotlib # Force matplotlib to not use any Xwindows backend. matplotlib.use('Agg')
2단계: 잠재적인 경고 처리
matplotlib 버전에 따라 백엔드 선택 순서에 관한 경고를 받을 수 있습니다. matplotlib 모듈에 대한 다른 호출 전에 이 코드가 실행되는지 확인하세요.
대안: .matplotlibrc 편집
코드에서 백엔드를 지정하는 대신 matplotlib 구성을 수정할 수 있습니다. 사용자의 홈에 있는 '.matplotlibrc' 파일 디렉토리:
이렇게 하면 matplotlib가 코드 실행에 관계없이 항상 'Agg' 백엔드를 사용하게 됩니다. order.
예
다음 Python 코드를 고려하세요.
import matplotlib matplotlib.use('Agg') import networkx as nx import matplotlib.pyplot as plt G = nx.Graph() G.add_node(1) G.add_nodes_from([2, 3, 4, 5, 6, 7, 8, 9, 10]) nx.draw(G) plt.savefig("/var/www/node.png")
'matplotlib.use('Agg')'를 앞에 추가하여 networkx 및 matplotlib 가져오기를 사용하면 오류가 해결되어 그래픽 없이 PNG 이미지를 생성할 수 있습니다. 인터페이스.
위 내용은 디스플레이가 없는 시스템에서 Matplotlib를 사용하여 PNG 이미지를 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!