このエラーが発生しています:
/sw/lib/python2.7/site-packages/matplotlib/backends/backend_macosx.py:235:UserWarning:Pythonはフレームワークとしてインストールされていません。 Pythonがフレームワークとしてインストールされていない場合、MacOSXバックエンドは正しく動作しない可能性があります。 Mac OS XでフレームワークとしてPythonをインストールする方法の詳細については、Pythonのドキュメントを参照してください
Finkを使用してpython27をインストールしましたが、デフォルトのmatplotlibがmacosxフレームワークを使用しています。
PythonをビルドしてMac OS Xにインストールする方法は2つあります。1つは従来のフラットなUnix-y共有ライブラリとして使用します。もう1つはframework
インストールとして知られています。製品のすべてのコンポーネントディレクトリ(include
、lib
、bin
)がメインフレームワークディレクトリの下にサブディレクトリとしてインストールされる、OS X上の他のフレームワークに類似したファイルレイアウトFink
プロジェクトは、Unix共有ライブラリ方式を使用してPythonをインストールしますが、OS XでAppleが提供するPythonを含む他のほとんどのディストリビュータ、python.org
インストーラー、およびMacPorts
プロジェクトは、framework
バージョンのPythonをインストールします。フレームワークインストールの利点の1つは、Pythonインタープリターがとしてパッケージ化されているため、ウィンドウマネージャー接続(通常はGUI関連のインターフェイス)を必要とするさまざまなOS X API呼び出しで適切に動作することです。フレームワーク内のアプリバンドル。
GUI関数を必要とするmatplotlibの関数が必要な場合、最も簡単な方法は、matplotlib(port py27-matplotlib
)およびその依存関係。その場合、Fink
とMacPorts
の間にパッケージを混在させないように注意してください。本当に注意しない限り、どちらか一方に固執するのが最善です。それに応じてシェルパスを調整します。 Finkパッケージをすべて削除し、MacPortsバージョンをインストールするのが最も安全です。
一部のユーザーは、すべてのスクリプトのバックエンドを変更したくない場合があります。このページ- http://matplotlib.org/faq/usage_faq.html#what-is-a-backend -別の方法を示します:
import matplotlib
matplotlib.use('TkAgg')
matplotlib
のサブパッケージまたはmatplotlib
に依存するサードパーティのパッケージをインポートする前に、これを行う必要があります。
オプションで、追加のインストールを必要としないAgg
バックエンドを使用できます。ただbackend : Agg
into ~/.matplotlib/matplotlibrc
OSX 10.10(Yosemite)に切り替えると、これが表示されます。 WXAggバックエンドに切り替えて修正しました。
fink install wxpython300-py27
mkdir ~/.matplotlib
echo "backend : WXAgg" >>~/.matplotlib/matplotlibrc
http://matplotlib.org/1.3.0/faq/usage_faq.html#what-is-a-backend
Matplotlibrcファイルがそこに見つからない場合は、matplotlibrcを置き、次のコマンドで場所を確認します。
import matplotlib as mpl
mpl.get_configdir()
私のコンピューターでのPythonのAnacondaディストリビューションと、Python 3.4。
「pip install matplotlib」を実行した後、コードにmatplotlitをインポートできますが、画像をプロットしようとするとエラーが発生します。
だから私はターミナルに戻り、Anaconda Python( "conda install matplotlib")に推奨されるcondaコマンドを使用しました。問題はそれ自体で解決しました(これはすべて、 http://conda.pydata.org/docs/using/envs.html )でcondaコマンドツールを使用して作成しました。私のシステムはMac OSX 10.10.5を実行しています。
次のコードシーケンスでライブラリをインポートしてください。これにより、新しいフォルダーを作成する必要はありません。
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
一般的に、私は使用しています
import matplotlib
matplotlib.use('Agg')
これを解決します。しかし最近、コードベースでテストを実行しているときにこのフレームワークエラーが発生し、非常に限られた変更のみを行う必要があります。その場合、matplotlibのOSXドキュメントの仮想環境の設定方法に関するアドバイスに従ってください:
If you are on Python 3, use venv instead of virtualenv:
python -m venv my-virtualenv
source my-virtualenv/bin/activate
"backend: TkAgg"
に~/.matplotlib/matplotlibrc
を追加した後でも同じ問題に直面している場合、仮想環境に問題がある可能性があります。
したがって、python3を使用している場合は、virtualenvの代わりに venv を使用します。
Python3でvenvを使用するには、python -m venv my-virtualenv
を使用して仮想環境を作成し、source my-virtualenv/bin/activate
を使用してvirtualenvをアクティブにします。
残りはvirtualenvと同じです。それ以外の場合、virtualenvを仮想環境として使用する場合は、PYTHON_CONFIGURE_OPTS="--enable-framework" pyenv install x.x.x
を使用します。
〜/ .bash_profileでpythonを起動するように新しいコマンドをエイリアスするだけでうまくいきます。
エイリアスvpython3 =/Library/Frameworks/Python.framework/Versions/3.6(独自のpython version)/ bin/python3に置き換えます
次に、「source〜/ .bash_profile」とvpython3を使用してpython3を起動します。
説明:Pythonは実際にはデフォルトでMacにフレームワークとしてインストールされますが、virtualenvを使用すると、上記のフレームワークディレクトリ(端末の「which python3」おそらくMatplotlibは、pythonフレームワークでbin/include/lib /、etcを見つける必要があります。
公式のFAQ on OSXでMatplotlibを使用する方法を確認してください。 状況に応じていくつかの解決策があります。 :
conda install python.app
python.appをインストールするpythonw
を使用してpython scriptを実行します。例:pythonw my_script.py