문제 해결 #

Matplotlib 버전 얻기 #

Matplotlib 버전 번호를 찾으려면 가져와서 __version__속성 을 인쇄하십시오.

>>> import matplotlib
>>> matplotlib.__version__
'0.98.0'

matplotlib설치 위치 #

__file__Matplotlib를 가져오고 속성 을 인쇄하여 Matplotlib가 설치된 디렉토리를 찾을 수 있습니다 .

>>> import matplotlib
>>> matplotlib.__file__
'/home/jdhunter/dev/lib64/python2.5/site-packages/matplotlib/__init__.pyc'

matplotlib구성 및 캐시 디렉토리 위치 #

각 사용자는 matplotlibrc 파일 을 포함할 수 있는 Matplotlib 구성 디렉토리를 가지고 있습니다 . matplotlib/구성 디렉토리 를 찾으려면 다음 을 사용 matplotlib.get_configdir()하십시오.

>>> import matplotlib as mpl
>>> mpl.get_configdir()
'/home/darren/.config/matplotlib'

Unix 계열 시스템에서 이 디렉토리는 일반적으로 HOME디렉토리 아래의 .config/디렉토리.

또한 사용자에게는 캐시 디렉토리가 있습니다. 유닉스 계열 시스템에서 이것은 기본적으로 구성 디렉토리와 분리되어 있습니다. .cache/디렉토리 를 찾으려면 다음 을 사용 matplotlib.get_cachedir()하십시오.

>>> import matplotlib as mpl
>>> mpl.get_cachedir()
'/home/darren/.cache/matplotlib'

Windows에서 config 디렉토리와 캐시 디렉토리는 모두 동일하며 기본적으로 or 디렉토리에 있습니다.Documents and SettingsUsers

>>> import matplotlib as mpl
>>> mpl.get_configdir()
'C:\\Documents and Settings\\jdhunter\\.matplotlib'
>>> mpl.get_cachedir()
'C:\\Documents and Settings\\jdhunter\\.matplotlib'

다른 구성 디렉토리를 사용하려면 다음에서 위치를 지정하면 됩니다.MPLCONFIGDIR 환경 변수 -- Linux 및 macOS에서 환경 변수 설정을 참조하십시오 . 참고 MPLCONFIGDIR구성 디렉토리와 캐시 디렉토리 모두의 위치를 ​​설정합니다.

도움 받기 #

Matplotlib에 대한 도움을 얻을 수 있는 유용한 리소스가 많이 있습니다. 귀하의 질문이 이미 제기되었을 가능성이 높습니다.

검색을 통해 질문에 대한 답변을 찾을 수 없는 경우 메일링 리스트 에 대한 이메일에 다음 정보를 제공하십시오 .

  • 운영 체제(Linux/Unix 사용자: 의 출력 게시 ).uname -a

  • 매트플롯립 버전:

    python -c "import matplotlib; print(matplotlib.__version__)"
    
  • Matplotlib를 얻은 위치(예: Linux 배포판의 패키지, GitHub, PyPI 또는 Anaconda ).

  • matplotlibrc파일 에 대한 모든 사용자 지정 ( 스타일 시트 및 rcParams를 사용하여 Matplotlib 사용자 지정 참조 ).

  • 문제를 재현할 수 있는 경우 문제를 설명하는 최소한 의 독립 실행형 Python 스크립트를 제공하십시오. 이것은 중요한 단계입니다. 오류를 실행하고 재현할 수 있는 코드를 게시할 수 없는 경우 도움을 받을 가능성이 크게 줄어듭니다. 매우 자주, 오류를 생성하는 가장 작은 비트로 코드를 최소화하려는 단순한 행동이 문제를 일으키는 코드 의 버그 를 찾는 데 도움이 됩니다.

  • Matplotlib는 라이브러리를 통해 디버깅 정보를 제공 logging하고 로깅 수준을 설정하는 도우미 함수를 제공합니다.

    plt.set_loglevel("info")  # or "debug" for more info
    

    이 디버깅 정보를 얻으려면.

    모듈 의 표준 기능 logging도 적용 가능합니다. 예를 들어 Matplotlib를 가져오기 전에 호출 logging.basicConfig(level="DEBUG")하거나(특히 Matplotlib 가져오기 중에 내보낸 로깅 정보를 얻는 데 필요함) "matplotlib" 로거에 사용자 지정 처리기를 연결할 수 있습니다. 사용자 지정 로깅 구성을 사용하는 경우 유용할 수 있습니다.

Matplotlib를 직접 컴파일한 경우 다음도 제공하십시오.

  • setup.py또는 에 대한 모든 변경 사항 setupext.py.

  • 출력:

    rm -rf build
    python setup.py build
    

    빌드 출력의 시작 부분에는 Matplotlib 개발자가 문제를 진단하는 데 유용한 플랫폼에 대한 많은 세부 정보가 포함되어 있습니다.

  • 컴파일러 버전 -- 예: .gcc --version

메일링 리스트에 보내는 첫 번째 이메일에 이 정보를 포함하면 많은 시간을 절약할 수 있습니다.

버그 추적기에 버그를 제출하는 것보다 메일링 리스트에 작성하는 것이 더 빠른 응답을 받을 수 있습니다. 대부분의 개발자는 버그 추적기를 주기적으로만 확인합니다. 문제가 버그로 확인되어 신속하게 해결할 수 없는 경우 문제가 사라지지 않도록 트래커에 버그를 신고하라는 메시지가 표시될 수 있습니다.

최근 git 버전의 문제 #

먼저 깨끗한 빌드 및 설치( Matplotlib를 완전히 제거하는 방법 참조)가 있는지 확인 하고 최신 git 업데이트를 다운로드하여 설치하고 디버그 모드에서 간단한 테스트 스크립트를 실행합니다.

rm -rf /path/to/site-packages/matplotlib*
git clean -xdf
git pull
python -m pip install -v . > build.out
python -c "from pylab import *; set_loglevel('debug'); plot(); show()" > run.out

그리고 matplotlib-develbuild.out 메일링 리스트 에 게시 run.out하십시오 ( 사용자 목록 에 git 문제를 게시하지 마십시오 ).

물론 문제, 기대하는 것, 얻을 수 있는 것을 명확하게 설명하고 싶을 것입니다. 그러나 클린 빌드 및 설치가 도움이 되는 경우가 많습니다. 도움 받기 를 참조하십시오 .