トラブルシューティング#

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/ディレクトリ。

さらに、ユーザーにはキャッシュ ディレクトリがあります。Unix ライクなシステムでは、これはデフォルトで設定ディレクトリとは別のものです。.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

  • Matplotlib のバージョン:

    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も適用できます。たとえばlogging.basicConfig(level="DEBUG")、Matplotlib をインポートする前に呼び出すこともできます (これは特に、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-develメーリング リストに投稿build.outします (ユーザー リスト に git の問題を投稿しないでください)。run.out

もちろん、問題、予期していること、得ていることを明確に説明したいと思うでしょうが、多くの場合、クリーン ビルドとインストールが役に立ちます。ヘルプを表示するも参照してください。